4

如果按钮包含值'foo',我正在尝试隐藏它。

下面的代码不起作用,我不明白为什么:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Example</title>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js" type="text/javascript"></script>

<script type="text/javascript">
  $(document).ready(function () {
     $("button:contains('foo')").parent('div').hide();
  });
</script>

</head>
<body>

  <div class="prod_buy">
    <input name="Add to Cart" type="submit" class="rb green txtbutton" value="foo">
  </div>

</body>
</html>
4

2 回答 2

5
<script type="text/javascript">
$(document).ready(function () {
   $("input[value=foo]").closest('div').hide();
});
</script>
于 2012-08-03T11:52:36.163 回答
1

看起来你没有匹配一个按钮,它是一个提交输入。

使用这样的东西:

$("input[type=submit][value*=foo]").parent('div').hide();

value*意味着它将像“包含”一样匹配,例如它将匹配一个名为“foobar”的按钮。见这里:http ://api.jquery.com/attribute-contains-selector/

工作示例:http: //jsfiddle.net/e4ar9/

于 2012-08-03T11:51:59.330 回答