0

我的 HTML 结构采用以下格式

<div>
<form class="form-inline" style="padding-top:10px" action="javascript:function()">   <!-- a search bar-->
  <input id="id" type="text" " placeholder="Something">
   </form>

<button onClick="somefunction()"> b</button>
</div>

问题是我希望搜索栏在我按 Enter 时工作,但不幸的是它正在提交按钮元素,我有点困惑,因为按钮不是表单元素,我已经专门定义了 onClick。我是 javascript 新手,所以我确信它很小,但我无法解决它。

即当我按下回车键时,“somefunction()”变得活跃,而不是“function()”

4

2 回答 2

0

您可以将您的按钮放在表单中并调用该函数以onClick返回 false,如此所述。

编辑

根据您的编辑和您对所需内容的评论,您可以执行以下操作:

<html>
<head>
    <script>
        function formfunction(){
            alert("form function is called.");
        }
        function somefunction(){
            alert("the button is clicked.");
        }
    </script>
</head>
<body>
<div>
<form name="myform" action="#" onsubmit="formfunction(); return false;">
    <input id="id" type="text" placeholder="Something">
</form>
<button type="button" onClick="somefunction()"> b</button>
</form>
</div>
</body>
</html>
于 2012-08-14T21:47:45.297 回答
0

尝试这个

HTML

<div>
    <form class="form-inline" style="padding-top:10px" action="someFile.php" onsubmit="return someFunc();"> 
        <input id="id" type="text" placeholder="Something">
        <input type="submit" name="btn_submit" value="Submit" /> 
    </form>
</div>​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​

JS

function someFunc(){
    // code goes here
    return false;
}

只是一个例子

于 2012-08-14T21:50:35.330 回答