2012-02-21 2 views
0

私はWebアプリケーション(本当に素敵なツール)でJquery Autocomplete comboboxを使用していますが、オートコンプリートコンボボックスに関連付けられたフィールドが空の場合はフォームの送信を避けたいと思います。jquery autocomplete comboboxフィールドが空の場合に送信を防ぎます

今のところ、コンボボックスで何も選択されていない場合は、送信ボタンは表示されませんが、何かが選択されて消去された場合...私は送信ボタンを隠してしまいました。

アイデア?

ありがとうございます。ここ

編集は私のコードです:

/* HTML */ 
//The select filled with data for the combobox 
<select id="combobox"> 
     <option value=""></option> 
     <c:forEach var="item" items="${itemList}"> 
      <option value="${item.value}">${item.key}</option> 
     </c:forEach>   
</select> 

//The form with the button 
<form name="updateForm" action="update.htm" method="post"> 
    <input type="hidden" id="id1" name="cID" /> 
    <input type="hidden" id="id2" name="rID" /> 
    <input type="submit" id='btn_update' value="Update" /> 
</form> 

/* JAVASCRIPT */ 
//combobox widget init (...) 
$("#btn_update").hide(); 
$("#combobox").combobox({ 
    selected:selectedFunc 
}); 
+0

あなたのコードを追加してください:) – Awea

+0

コードを追加するように編集しました。 – Tony

答えて

0

私は間違って理解していなかった場合、あなたはこのような何かを探している、

HTML

<select id="sel"> 
    <option>-select-</option> 
    <option value="example1">example1</option> 
    <option value="example2">example2</option> 
</select> 
<input type="submit" id="but" style="display:none;"/> 

スクリプト

$("#sel").change(function() { 

if(this.selectedIndex == 0) 
    $("#but").hide(); 
else 
    $("#but").show(); 
});​ 

、ここjsFiddle link


はEDITです:

は正確にあなたの問題を解決することができませんでしたが、多分この例では、あなたにあなたが使用できる方法

が表示されますオートコンプリートを制御するイベントを変更します。ヌルの場合は、サブミットボタンを非表示にします(ヌルでない場合)。

here is an example in jsFiddle

が、悪いニュースからjquery-ui-autocomplete document

変更イベント値が変更された場合、フィールドは、ぼやけているときにトリガ

。 ui.itemは、選択した項目を参照します。

意味はonkeypressでは機能しませんが、トリガーするにはぼかしが必要です。 jquery-ui-autocomplateにkeypressイベントを追加すれば、正確に動作します。

+0

これは正しいですが、Jqueryのオートコンプリートコンボボックスを使用してください! – Tony

+1

@トニー私は、私の更新された答えをもう一度見て、おそらくあなたを助けるかもしれない。 – ocanal

+0

私はすでにあなたの例のようなコントロールを設定していますが、実際は私の問題です。フィールドがぼやけているときだけchangeイベントが発生するという事実です。時間があれば、オートコンプリートメソッドでkeypressイベントを追加する方法を見ていきます。 – Tony

関連する問題