我是jQuery的新手,在尝试将.val()与:contains()结合使用时遇到了这个问题。我正在尝试从文本字段获取输入并检查该输入是否在段落中,并在该段落中突出显示它。这里的所有代码都严格基于我从jQuery API获得的信息,但我无法使其工作。
请在此处查看jsfiddle:http://jsfiddle.net/tUKp8/
这是我的jQuery代码:
$("input").keyup(function () {
var value = $(this).val();
$("p:contains('value')").css("text-decoration", "underline");
}).keyup();
答案 0 :(得分:2)
你需要
$("p:contains(" + value +" )").css("text-decoration", "underline");
答案 1 :(得分:1)
两个问题:
字符串未连接 - 变量名称必须在字符串之外,并使用连接运算符(+
)添加。现在,您将字符串'value'传递给contains()
,它只会找到包含文本'value'的p
元素。相反,使用您声明的变量连接,如下所示:
$("p:contains(" + value + ")").css("text-decoration", "underline");
现在value
将传递到jQuery选择器。
您无需将keyup()
链接到最后。不将参数传递给此方法会触发keyup
事件,至少在此有限示例中,该事件不会执行任何操作。请在此处查看keyup()
的jQuery API:http://api.jquery.com/keyup/。您在上一个.keyup()
所做的事情属于第三类。
希望这有帮助!