2012-08-14 44 views
0

我有我的HTML結構按以下格式JavaScript的形狀誤差

<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> 

問題是我想要的搜索欄,當我按下它進入工作,但不幸的是它被提交按鈕元素,我稍困惑,因爲按鈕不是一個表單元素,我已經明確定義了onClick。我是新來的JavaScript,所以我相信它是一個小的東西,但我一直無法解決它。

即當我按下回車,「somefunction()」獲得主動,而不是「功能()」

+0

你是什麼意思「它提交按鈕元素?」 – 2012-08-14 21:44:23

+0

爲什麼表單動作值是「javascript:function()」? – 2012-08-14 21:46:31

+0

也有胭脂「中度型=」文本「在未關閉輸入標籤 – 2012-08-14 21:47:38

回答

0

你可以把你的按鈕形式的內部和onClick回報已調用的函數假的,因爲討論here

編輯

根據您的編輯和您的意見對你想要什麼,你可以做到以下幾點:

<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> 
+0

謝謝您的回答‘佔位符=’東西」,但這並沒有工作 – alex 2012-08-14 21:59:32

+0

我沒有得到你想要的東西。我編輯了我的答案,看看它是否能解決您的問題。 – 2012-08-15 01:17:22

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; 
} 

Just an example

+0

謝謝,但該按鈕狀態只是彈出了!沒有工作 – alex 2012-08-14 22:08:37

+0

好吧,我想你想執行'sumeFunc'按下按鈕,這答案是所有關於那個。你檢查過這個例子嗎? – 2012-08-14 22:12:56

+0

我沒有,但也許我還是有點困惑,在按鈕上點擊我要執行其他功能和回報,我想執行與表單元素鏈接功能 – alex 2012-08-14 22:24:00