0

我想设置一个ASP.NET hidden fieldwith的值JQuery,然后从ASP.NET后面的代码中读取它的值。

到目前为止我有这段代码,但是当我追踪它时,我发现它改变了 的值hidden field,但是code behind得到了之前的值hidden field

有什么建议么?提前谢谢。

ASPX:

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

查询:

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";
4

1 回答 1

1

问题是您在设置要执行的 javascript 的块中检查它。当你的 if 条件被执行时,func实际上并没有像你想象的那样被调用。

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

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

于 2014-10-05T10:19:11.400 回答