2016-09-01 53 views
0

我需要將參數值發送到ASP按鈕內的PostBackUrl方法 的查詢字符串中。作爲PostBackUrl查詢字符串的一部分發送Java腳本變量值

我需要的值已被下面顯示的java腳本函數捕獲。

如何將hiddId中的值作爲URL的一部分發送?下面的方法不起作用。有人可以幫忙嗎?

<script language="javascript" type = "text/javascript"> 
     function btn_Selected() { 
      var hiddId = null; 
      $('#<%=GridView1.ClientID %>').find('input[type=radio]:checked').each(function() { 
       hiddId = $(this).closest('tr').find('input[type = "hidden"]').val(); 
      }); 

    } 

<asp:Button ID="Btn_Update" runat="server" Text="Update" PostBackUrl="Screen_Edit.aspx?CustID='<%=hiddId%>'" 

回答

0

而不是回傳,只是使用JavaScript重定向。

function btn_Selected() { 
      var hiddId = null; 
      $('#<%=GridView1.ClientID %>').find('input[type=radio]:checked').each(function() { 
       hiddId = $(this).closest('tr').find('input[type = "hidden"]').val(); 
      }); 
      window.location.href = "Screen_Edit.aspx?CustID='" + hiddId + "'" 
    } 
+0

工作,雖然現在我有一個新問題.. CustID傳遞與單引號。所以,當我嘗試在後面的代碼中獲取參數時,Request.QueryString [「CustID」]返回'3001'而不是3001 – CodeSharp

+0

我以爲這就是你想要的,所以就去window.location.href =「Screen_Edit。 aspx?CustID =「+ hiddId – Seano666

+0

That worked .. :) – CodeSharp

0

如果你看一下網頁的HTML源代碼,該按鈕將有一個JavaScript的onclick事件,看起來像這樣javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(&quot;ctl00$mainContentPane$Btn_Update&quot;, &quot;&quot;, false, &quot;&quot;, &quot;Screen_Edit.aspx?CustID=&quot;, false, false))

所有我們需要做的是找到一種方法後面插入你的變量?CustID=

您可以將按鈕的onclick值替換爲jQuery的.attr()函數,並執行搜索並替換以插入您的變量。

<script type="text/javascript"> 
    $(document).ready(function() { 
     var hiddId = $(this).closest('tr').find('input[type = "hidden"]').val(); 
     $("#<%=Btn_Update.ClientID %>").attr("onclick", $("#<%=Btn_Update.ClientID %>").attr("onclick").replace("?CustID=", "?CustID=" + hiddId)); 
    }); 
</script> 
+0

即使我沒有嘗試jQuery方法,它仍然很好地知道屬性可以更改的方式。謝謝..!! – CodeSharp

相關問題