2017-03-16 102 views
0

我不太清楚是什么导致了这里的问题。我正在尝试使用.load()函数将视图加载到Jquery对话框中。在我的本地机器上,一切正常,但在服务器上,最终创建的URL不正确,因为它将该参数添加到URL两次。Jquery .load()在本地工作,但不在服务器上

链接从webgrid中是动态的,这是@ 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翻倍,给了我一个GET 404(找不到页面)。

有人碰巧知道会导致这种情况发生吗?如果你需要更多的代码,请让我知道。

+0

我看不出Javascript是如何做到这一点的。我怀疑这个问题是服务器上的重写规则。 – Barmar

+0

问题是在加载函数中的URL,请尝试使用@ URL.Action(“_ Groupers”,“Home”)?GroupIDForLookup = id –

+0

@NagarajRaveendran这实际上是这样做的。我尝试了一些类似的东西,但是本地故障。如果您愿意,请将此作为答案,我很乐意将其标记为正确。 –

回答

1

请在下面的代码中更新加载函数中的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> 
相关问题