用jquery事件代理某个属性的元素,应该怎么写?

<label>姓 <input class="lastName" type="text" data-bind = "lastName" type = "1"></label>
this.el.on('input', '[type = "1"]' , function(){...}

用这种写法找不到该元素,红框处应该怎么写,翻遍文档也没找到。。

clipboard.png

阅读 2.4k
3 个回答

type="text" data-bind = "lastName" type = "1"

两个type那个说了算?通过下面这个代码我们可以发现attr获取到的是text,效果观看地址。而且你那种on(event, selector, fn)一般是用来绑在document上,也就是父级祖先级上,然后过滤触发子节点的,文档查看地址

$('input').on('input',function(){
  console.log($(this).attr('type'))
})

'*[type=1]'

type = "1"不符合html规则吧,会被解析成type = "text"的,这样写是选不到的

document.querySelector('input.lastName')或者
 document.getElementsByClassName('lastName')[0]

不行吗

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题