difference between '$(<%= DDL.ID %>) & $('

difference between '$(<%= DDL.ID %>) & $('<%= DDL.ID %>')

本文关键字:gt ID amp lt between difference DDL      更新时间:2023-09-26

我试图将一个事件绑定到下拉列表,因为昨天JavaScript聊天室没有任何帮助,没有人能找到解决我问题的方法,但后来我不知怎么地试图将我的下拉列表绑定为以下

$('<%= ddl.ID %>').bind('change',myfunction);

$(<%= ddl.ID %>).bind('change',myfunction);

它开始工作了,知道吗?

编辑

抱歉它不适用于IE:(

jQuery使用类似CSS selector的语法。

对于ID Selector,它需要以#符号作为前缀。示例,$('#DOMElementId')

检查jQuery选择器列表

在你的情况下,正确的应该是

$('#<%= ddl.ID %>').bind('change',myfunction) // if you have no master page or 
                                              //ClientIDMode="static"

$('#<%= ddl.ClientID %>').bind('change',myfunction)
jQuery函数需要一个字符串作为选择器。

后一种语法没有任何意义,除了

  • 如果您的字符串是javascript变量(例如document.bodymyvar,如果您定义了myvar
  • 如果您的ddl.ID字符串包含引号(您可能已将其创建为ddl.ID = "'"#id'"";

你可能通过另一个错误修复了一个错误,使代码中的这一行无效。

您可能应该使用ClientID而不是

$('#<%= ddl.ClientID %>').bind('change', myfunction);

最佳选择是

$('#'+'<%= ddl.ClientID %>').bind('change',myfunction);

即使你在用户控制或内容页面中使用该控件,它也能工作

$('#'+'<%= ddl.ClientID %>').change(myfunction);