使用JQuery从代码中获取ASP.NET隐藏字段的价值

时间:2014-10-05 10:15:51

标签: jquery asp.net hiddenfield

我想用ASP.NET设置hidden field JQuery的值,然后从后面的ASP.NET代码中读取其值。

到目前为止我已经有了这段代码,但是当我跟踪它时,我发现它会更改hidden field的值,但code behind会获得hidden field之前的值!

有什么建议吗?提前完成。

ASPX:

<input type="hidden" id="SubmitHiddenField" name="SubmitHiddenField" clientidmode="Static" runat="server" />

JQuery的:

function func() {
    if (invalid) {
        $("#<%= SubmitHiddenField.ClientID %>").val("false");
        alert("false");
    }
    else {
        $("#<%= SubmitHiddenField.ClientID %>").val("true");
        alert("true");
    }
}

代码背后:

ScriptManager.RegisterStartupScript(this, this.GetType(), "script", "func()", true);
string s;

if (SubmitHiddenField.Value == "true")
     s = "Yes";
else if (SubmitHiddenField.Value == "false")
     s = "No";

1 个答案:

答案 0 :(得分:1)

问题是你在设置要执行的javascript的块中检查它。执行if条件时,实际上并未调用func,因为您认为是这样的。

func只会在Page_Load之后调用,而其他事件都会通过HTML发送到客户端。只有这样才会执行func

因此,您只能在回发后检查该值。例如,您可以添加一个按钮,该按钮将在后面的代码中执行处理程序,您可以在其中检查隐藏字段的值。