将java脚本变量值作为PostBackUrl查询字符串

时间:2016-09-01 16:59:27

标签: javascript asp.net aspbutton postbackurl

我需要将参数值发送到PostBackUrl方法的查询字符串中 在asp按钮内。

我需要的值已经在下面显示的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%>'"

2 个答案:

答案 0 :(得分: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 + "'"
     }

答案 1 :(得分:0)

如果你查看页面的HTML源代码,该按钮会有一个类似于onclick

的javascript 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=之后插入变量的方法。

您可以使用jQuery的onclick函数替换按钮的.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>