我正在开发一个 Web 应用程序,当在页面上按下树按钮时,我需要从后面的代码中触发 ac# 函数。我找到了一些为我找到节点的代码,但是,当尝试从 JS 调用它时,似乎无法识别 c# 函数。
<script type = "text/javascript">
function OnLoad() {
var links = document.getElementById("<%=navTree.ClientID %>").getElementsByTagName("a");
for (var i = 0; i < links.length; i++) {
links[i].setAttribute("href", "javascript:NodeClick(\"" + links[i].id + "\", \"" + links[i].getAttribute("href") + "\")");
}
}
window.onload = OnLoad;
function NodeClick(id, attribute) {
//Do Something
alert(nodeLink.innerHTML + " clicked" + PageMethods.node_Click());
eval(attribute);
}
</script>
这是我的 C# 代码:
[WebMethod]
public static string node_Click()
{
return "@#$";
}
如果我从警报中删除 PageMethods.node_Click() 调用,那么它可以正常工作,但不能与调用一起使用。我在输入 PageMethods 时也注意到了。我的函数在句号之后没有出现在弹出列表中(在 VS 中)
有任何想法吗?
另外,这是我的cs文件:
public partial class SiteMaster : MasterPage
{
protected void Page_Load(object sender, EventArgs e)
{
}
[WebMethod]
public static string node_Click()
{
return "@#$";
}
}