jQuery将attr值设置为整数

时间:2014-03-26 12:25:25

标签: jquery html css

如何将jQuery自定义属性值设置为Integer而不是String。 我想使用jQuery动态设置tabindex值。

<input tabindex=1 /> 
var allInputs = new Array();
                        $(':input').each(
                                function() {
                                    allInputs.push($(this));
                                }
                            );

                        $.each(allInputs, function (i) {
                            var indexNumber = i + 1;
                            $(this).attr('tabindex', indexNumber );
                        });

此代码将值设置为“”中的字符串。

 e.g <input tabindex="1" />

还有其他方法可以将值设置为整数,因此它将是

<input tabindex=1 />

/ Jivan

1 个答案:

答案 0 :(得分:4)

在HTML中,attribute value is always a string

即使您省略引号,也会假设它们在那里。

<input tabindex=1 />

严格精确

相同
<input tabindex="1" />

在渲染时,浏览器知道tabindex字符串值是一个数字并在内部进行解析。如果它不是数字,浏览器将忽略它。

事实上,建议始终使用引号。这就是为什么甚至设置属性值为整数(paseInt与否)时,浏览器会将其包装成引号..(甚至jQuery显式包装成引号)

不要担心引号,保持编码并感到高兴:)