问题描述
我有一个ASP.NET Webform,其中包括服务器端按钮。我已经在上面注册了一个Onclick按钮事件。
<asp:Button ID="UploadButton" CssClass="btn add btn-primary" runat="server" Text="Upload File" OnClick="UploadButton_Click" />
我想做的是
在服务器端,处理完所需的内容后,我已经填充了一个响应对象,我想将其返回给客户端(例如将其分配给javascript变量)。
如何获取客户端按钮单击事件返回的对象。
protected ResponseModel UploadButton_Click(object sender,EventArgs e)
{
ResponseModel responseModel = new ResponseModel();
//Processing File
//filling Response Object
return responseModel
}
UploadButton_Click()
方法的初始返回类型为空。
解决方法
我不确定您的响应对象有多复杂或简单,但是您是否尝试过使用<asp:HiddenField />
?像这样:
<asp:HiddenField ID="hiddenField" runat="server" value="" />
然后在您的代码隐藏中:
protected void UploadButton_Click(object sender,EventArgs e)
{
//Processing File
//filling Response Object
hiddenField.Value = responseObject.customProperty;
}
JavaScript应该能够通过以下方式找到它:
document.getElementById('<%=hiddenField.ClientID%>')