通过 jQuery 选择数字类型的输入
Posted
技术标签:
【中文标题】通过 jQuery 选择数字类型的输入【英文标题】:Select inputs with number type through jQuery 【发布时间】:2011-06-20 16:49:01 【问题描述】:如何在 jQuery 中选择所有数字类型的输入?
以下代码不起作用:
$(':input[type="number"]').click(function ()
alert('hello');
);
谢谢。
【问题讨论】:
代码示例?据我所知,这“应该”有效 【参考方案1】:您的选择器是正确的。使用attribute-equals-selector
(docs),它将选择具有该类型的输入元素。
您需要确保在运行 DOM 之前已加载它。
示例: http://jsfiddle.net/H2aQr/
$(function()
$(':input[type="number"]').click(function () alert('hello'); );
);
【讨论】:
onclick
在我点击箭头时似乎没有触发
@Josh,您的意思是在示例中?这个对我有用。你用的是哪个浏览器?
另外,您必须从 :input
中删除冒号以获得 IE 支持
@jAndy:你可能还没有看到我的其他评论,但:input
的情况并非如此。
@Josh:奇怪。我用的是 9.0.597.67 beta,没问题。我不明白为什么需要为 IE 删除 :
。它是一个有效的 jQuery/Sizzle 选择器,并且只是 input、textarea、select 和 button 元素的快捷方式。 api.jquery.com/input-selector【参考方案2】:
我认为你的问题是输入前的“:”。
尝试:
$('input[type="number"]').click(function () alert('hello'); );
【讨论】:
这是一个有效的选择器(带有冒号)。它被称为input-selector 不,:
是不好的做法,因为隐式使用了通用选择器,但这不是问题。
我的 firefox 只能在没有“:”的情况下工作。可能有问题
@jAndy:对于大多数这些类型,但不是对于这个(尽管它仍然选择了超出需要的范围)。这只是选择所有表单标签的快捷方式。 :checkbox
之类的东西是 [type='checkbox']
的快捷方式,这意味着通用选择。【参考方案3】:
正如您在此处看到的,您的代码运行良好...http://jsfiddle.net/U47Vj/ 也许您的浏览器不支持此html5 Feature。在 Chrome 中一切都很好。 FF 3.6 中的相同代码中断。
【讨论】:
【参考方案4】:开头不需要冒号,用于选择输入类型,如 $('input:text')
所以$('input[type="number"]').click(function () alert('hello'); );
效果很好
【讨论】:
以上是关于通过 jQuery 选择数字类型的输入的主要内容,如果未能解决你的问题,请参考以下文章