我正在尝试调用 JavaScript 函数。
function callSubClass(SubClassName) {
...
}
但我试图在中继器内调用它,其中参数“SubClassName”是绑定(bind)到我的中继器的字符串。
<asp:Repeater ID="rptSubClass" runat="server">
<ItemTemplate>
<asp:LinkButton Text='<%# Eval("SubClassName") %>' runat="server" ID="linkHomeItem" OnClick='<%# callSubClass(Eval("SubClassName")); return false; %>'/>
<br />
</ItemTemplate>
</asp:Repeater>
但是每次运行它时,我都会收到编译器错误:
CS1040: Preprocessor directives must appear as the first non-whitespace character on a line Error
现在我知道错误出在 OnClick='stuff' 上,但我已经尝试了所有我能想到的方法来使其工作。这是我迄今为止尝试过的列表。
OnClick='<%# callSubClass(Eval("SubClassName")); return false; %>'
OnClick='callSubClass(<%# Eval("SubClassName") %>); return false;'
OnClick='"callSubClass("+<%# Eval("SubClassName") %>+"); return false;"'
我做错了什么?感谢您提供的任何帮助。
最佳答案
尝试像这样...而不是 Onclick
使用 OnClientClick
来运行 javascript 代码......
OnClientClick='<%# @"callSubClass("""+Eval("SubClassName").ToString()+@""");return false;" %>'
关于javascript - 调用带有绑定(bind)到转发器的参数的 javascript 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16486106/