2014-11-07 72 views
0

我正在嘗試編寫一個完整性測試。鑑於:使用javascript執行搜索輸入字段

<div id="txt-search-wrapper" class="pull-left non-action"> 
    <span class="search-widget"></span> 
    <input type="text" class="search-widget" id="txt-search" placeholder="Search"> 
</div> 

如果我在控制檯中使用其中任何一種,文本將被輸入到搜索框中。如果我手動點擊進入ui,搜索將正確執行。

document.getElementById('txt-search').value='test' 
$('#txt-search').val('test') 

但是,以下命令將無法點擊並執行搜索。我試圖將\ r \ n附加到文本中,但無濟於事。我也玩過按鍵事件。

document.getElementById('txt-search').click() 
$('#txt-search').click() 
+0

請參閱以下答案: http://stackoverflow.com/questions/1225798/javascript-programmatically-invoking-events http://stackoverflow.com/questions/2379949/how-to-invoke-click-event - 從JavaScript的 – Kolban 2014-11-07 02:45:45

回答

0

對不起,如果我誤解了你的問題,但看起來有兩個獨立但相關的問題。如果你想要的東西,以實際發生

首先,。點擊()

你jQuery是有效的,但點擊()需要的處理程序。

$("#target").click(function() { 
    alert("Handler for .click() called."); 
}); 

[來源:http://api.jquery.com/click/]

其次,HTML表單

輸入元件實際上沒有執行搜索的能力。爲此,您需要使用提交按鈕構建表單。

見MDN的優秀文檔瀏覽:https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/Forms

對於一個簡單的例子,這樣的事情:

<!-- A common form that includes input tags --> 
<form action="getform.php" method="get"> 
    First name: <input type="text" name="first_name" /><br /> 
    Last name: <input type="text" name="last_name" /><br /> 
     E-mail: <input type="email" name="user_email" /><br /> 
<input type="submit" value="Submit" /> 
</form> 

來源:https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input

然後就可以調用點擊提交投入運行搜索。

希望有所幫助。

相關問題