【发布时间】:2013-09-04 12:04:43
【问题描述】:
点击锚链接后,我想调用一个代码隐藏函数(它将一些 HTML 内容代码加载到页面中)。
代码隐藏:
public void loadNewPage(string id)
{
ltlContent.Text = getPageCenter(id);
}
JS代码:
$('a').click(function (e) {
e.preventDefault();
var data = { userName: $(this).attr("id") };
var dataVal = JSON.stringify(data);
$.ajax({
type: "POST",
url: "Default.aspx/loadNewPage()",
contentType: "application/json; charset=utf-8",
data: dataVal,
dataType: "json",
success: function (id) {
}
});
});
HTML:
<a href="#" id="kontakt">Go to Kontakt</a>
我得到的只是#被添加到URL的后面并且没有调用代码隐藏函数。
【问题讨论】:
-
你的
dataValconsist of{'username':idvalue}和你的方法需要一个参数 id,此外,从url:"Default.aspx/loadNewPage()"中删除 () -
将您的密钥也包含在数据中的引号中,即 var data ={'id':value}
-
我认为您的代码隐藏可能是错误的。您无法通过 Web 服务调用访问页面上的控件。即
ltlContent将无法访问 -
@zgood - 那么你对将 HTML 代码从字符串注入页面有什么建议?
标签: javascript jquery asp.net ajax