我使用静态WebMethod
方法使用jQuery调用了一个代码隐藏方法。
该Web方法调用是成功的,但是当试图访问文本框控件时,它给出了错误。非静态字段,方法或属性需要对象引用。
[WebMethod]
public static Savedata()
{
//code to insert data to DB
//after inserting data successfully i need to change the text box text like following.
txtStatus.Text="Data Received";
}
答案 0 :(得分:9)
如@Tim Schmelter所述这不回答这个问题,因为您无法通过网络方法访问网页控件。
请完成 asp.net access a control from static function
[WebMethod]的重点是它们不运行ASP.Net页面生命周期。这样,它们快速且可并行化。 您的控件不存在。
重复答案 1 :(得分:5)
网络方法接受的答案是错误的。
正如Tim Schmelter在评论中正确提到的那样:
您无法从网络方法访问网页控件
这是正确的,因为Web方法不带有页面状态。这不是一个完整的回发。相反,会话cookie随请求一起传播。您必须执行整页回发以获取或设置控制值。