-1
<script type="text/javascript">
window.onload = init;

function init() {
    var button = document.getElementById("searchbutton");
    button.onclick = handleButtonClick;
}

function handleButtonClick(e) {
    var textinput = document.getElementById("searchinput");
    var searchterm = textinput.value;
    window.location.assign("http://www.google.com/testing/" + searchterm)
}
</script>

<input type="text" name="search" id="searchinput">
<button type="button" id="searchbutton">Ara</button>

このコード ブロックは、ユーザー入力を受け取り、新しいページに移動します。

ユーザーがエンターキーを押したとき、その送信ボタンと同じものを作りたいです。私はウェブで何かを見つけましたが、それらはすべてjqueryに関連しています。

4

3 に答える 3

0

送信ボタンでタグを使用し、フォームの .onSubmit() イベントを使用する必要があると思います。このイベントは、クリックしたときと Return (Enter) キーを押したときにトリガーされます。

JS コードの例 (JSFiddle でテスト済み、フォームを追加するためにコードを少し変更しただけです):

<script type="text/javascript">
function processForm(e) {
    if (e.preventDefault) e.preventDefault();

    var textinput = document.getElementById("searchinput");
    var searchterm = textinput.value;
    window.location.assign("http://www.urbandictionary.com/define.php?term=" + searchterm)

    return false; // Block form
}

var form = document.getElementById('searchForm');

if (form.attachEvent) { form.attachEvent("submit", processForm); } 
else { form.addEventListener("submit", processForm); }​
</script>
<form id="searchForm">
<input type="text" name="search" id="searchinput">
<input type="submit">
</form>​

このコードをライブで見ることができます: http://jsfiddle.net/UD8FN/

ヒューゴ、

于 2012-10-17T10:56:24.767 に答える
0
<input type="text" name="search" id="searchinput" onkeydown="if (event.keyCode == 13) handleButtonClick()">
于 2012-10-17T10:55:46.360 に答える