【发布时间】:2015-07-23 07:37:09
【问题描述】:
我对 jquery contains 有一个问题。它在 Firefox 上完美运行。
这是我的代码。
$("input[data-height='cm']").blur(function(){
var text = $(this).val();
if($(this).val().length > 0) {
if(!$(this).val().contains("cm")) {
$(this).val(text + " cm");
}
}
});
在 chrome 上会报错
未捕获的类型错误:$(...).val(...).contains 不是函数
我该如何解决它,请帮忙。
谢谢。
【问题讨论】:
-
那个函数不能那样工作。您可能想使用
indexOf、match或test之类的东西。 -
您正在尝试在
JavaScript string上使用jQuery contains方法。 -
contains 方法是 jquery 插件的或者你可以在 jquery 中使用 dom 元素选择器调用,你不能在字符串上调用它。为此,您必须使用 indexOf。
-
如果你全部使用
$(this).val(),为什么还要缓存text?你应该替换它们(除了你设置的那个) -
好的,我明白了,但它在 Firefox 上是如何工作的?
标签: javascript jquery google-chrome contains