を[送信]ボタンをトリガー:私は、テキスト入力ボックスに入力したキーを押すとたonPressイベントは、私が登録プロセスの一環として、次の形式を持っているページ全体のために
<form class="form1" id="register_form1" method="POST" action="<?php echo $register_url; ?>" name="register_form1">
<!-- other parts of the form that are not relevant to this question -->
<!-- text input area to conduct a search -->
<span style="text-align: left; width: 100%;margin-left:40px;">Select a primary recruiter</span>
<div class="ansDiv">
<table style="float: left;">
<tr>
<td>
<input type="text" id="primary_recruiter" name="primary_recruiter" value="" onkeypress="searchKeyPress(event);">
</td>
<td>
<input type="button" id="buttonSearch" value="" class="button_search" name="seachprimary" onclick="javascript: searchRecruiter();">
</td>
<td>
<a class="highlight" href="../images/PrimaryRecruiter.gif" style="float: right; padding-right: 655px;">
<img src="../images/Q-btn.png">
</a></td>
<td>
<input type="hidden" id="primary_recruiter_id" name="primary_recruiter_id" value="">
</td></tr>
</table>
<!-- last part of the form that is not relevant to this question -->
<!-- Submit button for the page itself. -->
<p align="center">
<input type="submit" class="button_submit" name="register1_submit" value="" />
</p>
</form>
And here's the javascript I have setup to implement a button press on Enter:
<script type="text/javascript">
function searchRecruiter(){
var temp = $("#primary_recruiter").val();
$.ajax({
type : 'GET',
url : 'searchrecruiter.php',
data: "name="+temp,
success : function(data){
$("#displayrecruiterlist").html(data);
}//end function(data) call
});//end $.ajax call
}//end searchRecruiter
//other java scripts
</script>
<!-- Press enter to search... -->
<script type="text/javascript">
function searchKeyPress(e){
// look for window.event in case event isn't passed in
if (typeof e == 'undefined' && window.event) { e = window.event; }
if (e.keyCode == 13){
document.getElementById('buttonSearch').click();
}
}
</script>
、私が文書に終わるん.getElementByID( 'buttonSearch')。クリック();そのように働く。しかしそれは ページは私がid属性を持たないsubmitをクリックしたかのように応答します。
検索ボタンをクリックすると、期待通りに機能します。私は間違って何をしていますか?私は、その検索ボタンにクリックを送信していると思った。 それは私が持っているレスポンスではない。
ありがとうございました。
私はウェブ開発(PHP、JavaScriptなど)を初めて使い、仕事を学んでいます。 私が提供する必要があるものが他に必要な場合は教えてください。
少なくとも、余分な空白行からコードを削除することができます。「searchKeyPress」では、ENTERの元のヒットをキャンセルする必要があります。 – Teemu
これはもう一つの注意点でしたが、私はこのコードを最初に書きませんでした。入力の元のヒットをキャンセルするにはどうすればよいですか?追加することは**偽を返しますか?** _after_click()コールはそのトリックを行いますか? :::試しています::: – Waddler
試行に失敗しました。私が知っている理由は、空のフィールドのアラートが私がenterを押すと消されるのですが、ボタンを直接クリックすると正常のように動作します。 – Waddler