2013-09-26 41 views
0

我有以下问题。我有一个页面,在Document Ready事件中,我调用一个返回字符串值的Web服务。之后,该值被分配给一个Label控件(可见)。之后,我想使用代码背后的值,但我不知道如何得到它。如何在回发后保留在javascript中设置的值

所有的事件Page_load,Page_Prerender ......已经通过从服务检索值之前通过,所以我不能在任何事件中得到它。

如果我试图让它在按钮上单击该页面将执行回发并丢失该值。

我试图通过Request.Form找到控制,但它仍然没有返回。

回答

0

JQuery的:

$(document).ready(function() { 
    var ValueOFWebService = "sss"; 
    $('#hf').val(ValueOFWebService); 
}); 

ASPX:

<input id="hf" runat="server" type="hidden" /> 
<asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" /> 

后面的代码:

protected void Button1_Click(object sender, EventArgs e) 
{ 
    Response.Write(hf.Value); 
} 
0

您可以在客户端更改label的值,但您不会在服务器端获得新的标签值,因为它不可编辑。你可以把hidden field这个值得到。

+0

您永远不会获得新的价值,因为在服务器上您将获得旧值。您只能在服务器端设置标签值,而不是在客户端。 – Nirmal

0

可以在隐藏字段保存值

.aspx的:

<asp:HiddenField ID="CustomHiddenField" runat="server" ClientIDMode="Static" /> 

在隐藏文件的代码:

ScriptManager.RegisterClientScriptBlock(this, this.GetType(), Guid.NewGuid().ToString(), "someval=" + this.CustomHiddenField.Value, true); 

Jquery的:

$(document).ready(function() { 
var value= someval; 
$('#htmlemement').val(value); 

});