jQuery问题,实时点击和输入命名为“名称”

时间:2010-01-03 14:46:03

标签: jquery

如果表单包含名为“name”的输入,则jQuery live click无法正常工作。将名称更改为其他内容有帮助。谁能告诉我为什么会这样呢?

如果有一个字段名称“named”,当我点击名为“value”的输入时,实时点击不起作用。如果我将名称从“名称”更改为“名称2”,则单击名为“值”的字段即可。

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.js"></script>

<script>
$('form[name="prepare"] input[name="value"]').live('click', function(){
    alert('Clicked!');
    return false;
});
</script>

<form name="prepare" method="post">
    <input type="text" name="name" />
    <input type="text" name="value" />
</form>

3 个答案:

答案 0 :(得分:1)

如果您通过<form>而不是id来解决name错误消息:

<form name="prepare" method="post" id="myform">

$('form#myform input[id="value"]').click(function(){

答案 1 :(得分:0)

name="prepare"元素的FORM属性/值对更改为id="prepare",它应该有效,like so

  <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.js"></script>
  <script>
   $('form#prepare input[name=value]').live('click', function() {
    alert('Clicked!');
    return false;
   });
  </script>
 <form id="prepare" method="post">
  <input type="text" name="name">
  <input type="text" name="value">
 </form>

答案 2 :(得分:0)

html specs

  

<form>,name =

     

请注意。包含此属性是为了向后兼容。应用程序应使用id属性来标识元素。

由于不推荐使用此属性,jquery可能会错误地处理它。