【发布时间】:2011-06-20 16:49:01
【问题描述】:
如何在 jQuery 中选择所有数字类型的输入?
以下代码不起作用:
$(':input[type="number"]').click(function () {
alert('hello');
});
谢谢。
【问题讨论】:
-
代码示例?据我所知,这“应该”有效
标签: jquery-selectors types numbers html html-input
如何在 jQuery 中选择所有数字类型的输入?
以下代码不起作用:
$(':input[type="number"]').click(function () {
alert('hello');
});
谢谢。
【问题讨论】:
标签: jquery-selectors types numbers html html-input
您的选择器是正确的。使用attribute-equals-selector(docs),它将选择具有该类型的输入元素。
您需要确保在运行 DOM 之前已加载它。
示例: http://jsfiddle.net/H2aQr/
$(function() {
$(':input[type="number"]').click(function () { alert('hello'); });
});
【讨论】:
onclick 在我点击箭头时似乎没有触发
:input 中删除冒号以获得 IE 支持
:input 的情况并非如此。
:。它是一个有效的 jQuery/Sizzle 选择器,并且只是 input、textarea、select 和 button 元素的快捷方式。 api.jquery.com/input-selector
我认为你的问题是输入前的“:”。
尝试:
$('input[type="number"]').click(function () { alert('hello'); });
【讨论】:
: 是不好的做法,因为隐式使用了通用选择器,但这不是问题。
:checkbox 之类的东西是 [type='checkbox'] 的快捷方式,这意味着通用选择。
正如您在此处看到的,您的代码运行良好...http://jsfiddle.net/U47Vj/ 也许您的浏览器不支持此HTML5 Feature。在 Chrome 中一切都很好。 FF 3.6 中的相同代码中断。
【讨论】:
开头不需要冒号,用于选择输入类型,如 $('input:text')
所以$('input[type="number"]').click(function () { alert('hello'); });
效果很好
【讨论】: