.Net Listbox 无法使用 javascript 事件处理程序进行编译?
这应该是最简单的事情,但它行不通。我有一个简单的 asp.net 列表框,对于事件 OnSelectedIndexChanged 我想启动一个 javascript 函数。这适用于当我设置链接来启动相同功能时,但不适用于此特定控件。代码行如下:
<tr><td>
<asp:ListBox ID="ListBox1" runat="server" Width="250"
Height="600" OnSelectedIndexChanged="javascript:selectedIndexChanged()">
</asp:ListBox>
</td></tr>
这是我收到的编译错误:
c:\..\ManufInfo.aspx(171,84):错误 CS1026:)预计
c:\..\ManufInfo.aspx(171,84): 错误 CS1002:;预期
c:\..\ManufInfo.aspx(171,84): 错误 CS1525:无效的表达式术语“:”
c:\..\ManufInfo.aspx(171,84): 错误 CS1026:)预计
c:\..\ManufInfo.aspx(171,84): 错误 CS1002:;预计
c:\..\ManufInfo.aspx(171,84): 错误 CS1525:无效的表达式术语“:”
c:\..\ManufInfo.aspx(171,85): 错误 CS1002:;预计
c:\..\ManufInfo.aspx(171,85): 错误 CS1002:;预计
c:\..\ManufInfo.aspx(171,107): 错误 CS1002:;预计
c:\..\ManufInfo.aspx(171,107): 错误 CS1525:无效的表达式术语“)”
c:\..\ManufInfo.aspx(171,107): 错误 CS1002:;预计
c:\..\ManufInfo.aspx(171,107): 错误 CS1525:无效的表达式术语 ')'
到底是怎么回事? ;)可能是一个n00b错误,但我认为我已经学会了jscript,足以理解它应该起作用......
感谢任何可以为我指明正确方向的人!
This should be the simplest thing ever but it will not work. I have a simple asp.net Listbox and for the event OnSelectedIndexChanged I want to launch a javascript function. This works for when i set links to launch the same function but not when set for this particular control. The line of code is as follows:
<tr><td>
<asp:ListBox ID="ListBox1" runat="server" Width="250"
Height="600" OnSelectedIndexChanged="javascript:selectedIndexChanged()">
</asp:ListBox>
</td></tr>
Here are the compilation errors i am getting:
c:\..\ManufInfo.aspx(171,84): error
CS1026: ) expected
c:\..\ManufInfo.aspx(171,84): error
CS1002: ; expected
c:\..\ManufInfo.aspx(171,84): error
CS1525: Invalid expression term ':'
c:\..\ManufInfo.aspx(171,84): error
CS1026: ) expected
c:\..\ManufInfo.aspx(171,84): error
CS1002: ; expected
c:\..\ManufInfo.aspx(171,84): error
CS1525: Invalid expression term ':'
c:\..\ManufInfo.aspx(171,85): error
CS1002: ; expected
c:\..\ManufInfo.aspx(171,85): error
CS1002: ; expected
c:\..\ManufInfo.aspx(171,107): error
CS1002: ; expected
c:\..\ManufInfo.aspx(171,107): error
CS1525: Invalid expression term ')'
c:\..\ManufInfo.aspx(171,107): error
CS1002: ; expected
c:\..\ManufInfo.aspx(171,107): error
CS1525: Invalid expression term ')'
What the heck is going? ;) Probably a n00b mistake but I thought I was picking up jscript enough to understand that should work...
Thanks to anyone who can point me in the right direction!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
OnSelectedIndexChanged 不适用于 javascript 处理程序。在 page_load 上试试这个
OnSelectedIndexChanged is not meant for javascript handlers. Try this on page_load
OnSelectedIndexChanged
属性中的值必须是代码隐藏(或代码旁)中与EventHandler
委托签名相匹配的方法名称,该方法在回发时执行。SOE 提供了向控件添加 javascript onclick 事件的正确方法。
The value that goes in the
OnSelectedIndexChanged
attribute must be the name of a method in the code-behind (or code-beside) that matches the signature of theEventHandler
delegate, which is executed on post back.SOE has provided the correct way to add a javascript onclick event to your control.
OnSelectedIndexChanged 是服务器端的。不会触发 JavaScript,它会引用代码隐藏方法。
OnSelectedIndexChanged is server side. Will not trigger a javascript, it will refer to a codebehind method.
此属性是为 ASP.Net 事件设计的,而不是为客户端事件处理而设计的。
您可以在控件呈现后附加一个事件处理程序,如下所示:
This attribute is designed for ASP.Net events, not for clientside event handling.
You can attach an eventhandler after the control is rendered like this: