【发布时间】:2011-10-13 02:50:59
【问题描述】:
我有一个如下的页面层次结构
如果我单击“保存”按钮,我想执行一个 PageMethod,所以我编写如下代码
On Button Click 我调用了
OnClientClick="return btnSaveAS_Clicked()"
在内部用户控件的PageLoad上调用如下
private void RegisterJavaScript()
{
StringBuilder jScript = new StringBuilder();
jScript.Append("<script type='text/javascript'>");
jScript.Append(@"function btnSaveAS_Clicked() {
var txtConditionName = document.getElementById('" + txtConditionName.ClientID + @"').value;
PageMethods.Combine('hello','world', OnSuccess);
function onSuccess(result)
{
alert(result);
}
}");
jScript.Append("</script>");
Page.ClientScript.RegisterStartupScript(this.GetType(), "conditions_key", jScript.ToString());
}
编码页面方法为
[WebMethod]
public static string Combine(string s1, string s2) {
return s1 + "," + s2;
}
但它给出了以下错误...
【问题讨论】:
-
那么这里的 UpdatePanel 因素在哪里?
-
@jcolebrand :更新面板位于“页面”中。在“页面”中,我有一个下拉列表,根据我将加载用户控件的选择。
-
Page 方法在哪里?页面还是在 UserControl 中?
标签: javascript asp.net updatepanel pagemethods