2017-03-16 23 views
0

ここで何が原因であるのかよく分かりません。 .load()関数を使用してJqueryダイアログにビューをロードしようとしています。私のローカルマシン上では問題なく動作しますが、サーバ上でURLを2回追加するため、作成されるURLは正しくありません。Jquery .load()はローカルでは動作しますが、サーバ上では動作しません

リンクは、@ item.GrouperIDForLookipが由来するウェブグリッドから動的です。

<div id="groupersDialog"></div> 
<a id="[email protected]" class="grouper">Groupers</a> 
... 
<script> 
    $(".grouper").on("click", function() { 
     var id = $(this).attr("id").split("_")[1]; 
     $('#groupersDialog').dialog({ 
      autoOpen: true, 
      width: 1000, 
      height: 600, 
      resizable: true, 
      draggable: true, 
      title: "Groupers", 
      model: true, 
      show: 'slide', 
      closeText: 'x', 
      dialogClass: 'alert', 
      closeOnEscape: true, 
      open: function() { 
       //Load the Partial View Here using Controller and Action 
       $('#groupersDialog').load('/Home/_Groupers/?GroupIDForLookup=' + id); 
      }, 

      close: function() { 
       $(this).dialog('close'); 
      } 
     }); 
}); 
</script> 

私のローカルマシンでは、すべて正常に動作し、ロードのURLが機能します。しかし、実行時にサーバー上で作成されるURLは%2fHome%2f_Groupers%2f%3fGroupIDForLookup%3d2&GroupIDForLookup=2で、GroupIDForLookupを2倍にするとGET 404(ページが見つかりません)が表示されます。

これが起こる原因を知っている人は誰ですか?より多くのコードが必要な場合は、私に知らせてください。

+0

私はJavascriptがこれを行う方法を見ていません。問題はサーバー上の書き換えルールだと思われます。 – Barmar

+0

ロード機能内のURLに問題があります。@ URL.Action( "_ Groupers"、 "Home")?GroupIDForLookup = id –

+0

@NagarajRaveendranこれは実際にそのトリックを行いました。私は似たようなことを試みましたが、ローカルでは失敗していました。あなたがしたい場合は、これを答えにして、私は喜んでそれを正しいとマークします。 –

答えて

1

以下のコードのload関数のURLを更新してください。

<div id="groupersDialog"></div> 
<a id="[email protected]" class="grouper">Groupers</a> 
... 
<script> 
    $(".grouper").on("click", function() { 
     var id = $(this).attr("id").split("_")[1]; 
     $('#groupersDialog').dialog({ 
      autoOpen: true, 
      width: 1000, 
      height: 600, 
      resizable: true, 
      draggable: true, 
      title: "Groupers", 
      model: true, 
      show: 'slide', 
      closeText: 'x', 
      dialogClass: 'alert', 
      closeOnEscape: true, 
      open: function() { 
       //Load the Partial View Here using Controller and Action 
       $('#groupersDialog').load(
       '@URL.Action("_Groupers", "Home")?GroupIDForLookup' + id); 
      }, 

      close: function() { 
       $(this).dialog('close'); 
      } 
     }); 
}); 
</script> 
関連する問題