1

为什么以下页面不适用于包含的表单标签(如下所示),但是当它们被删除时?(显然是 jquery 的新手......)

 <!DOCTYPE html>
 <head>
    <script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
    <script language="JavaScript">
      $(document).ready(function () {
            $("button").click(function () {
              $('#inputid').focus();       
            });
    });
    </script>
 <head>
 <body>

 <form>
     <input type="text" id="inputid">
     <button>Click Me</button>
 </form>

 </body>
 </html>
4

5 回答 5

2

因为 a <button>(在您使用的浏览器中)的默认行为是提交。因此,当您单击包含表单标签的按钮时,表单会执行 POST。

submit: 创建一个提交按钮。这是默认值。

http://www.w3.org/TR/html401/interact/forms.html#h-17.5

添加type="button"到按钮元素以阻止它发布表单。

为了安全起见,您应该始终指定按钮的类型。

于 2013-06-29T09:22:22.683 回答
2

我已经对其进行了测试并且可以正常工作...

<script>
      $(document).ready(function () {
            $("#button").click(function () {
              $('#inputid').focus();  
              //return false;     
            });
    });
    </script>

<form>
     <input type="text" id="inputid">
     <input id="button" type="button" value="Click"/>
 </form>
于 2013-06-29T09:36:23.647 回答
1
$(document).ready(function () {
    $("button").click(function (e) {
        e.preventDefault();

        $('#inputid').focus();
        return false;
    });
});

当您单击 button.Form 时执行发布。

于 2013-06-29T09:24:47.047 回答
1

尝试使用这样的按钮:

 <button type="button">Click Me</button>
于 2013-06-29T09:23:57.703 回答
0

试试这个方法

 <form action="#">
     <input type="text" id="inputid">
     <button>Click Me</button>
 </form>
于 2013-06-29T09:28:32.023 回答