2012-02-12 3 views
0

jqueryuiでカテゴリを使用すると、少し複雑になりました。そのフォームでjQueryuiでgoogleのautosuggestのようなフォームonclickを送信するには?

<script type="text/javascript"> 
$(document).ready(function() { 
    $.widget("custom.catcomplete", $.ui.autocomplete, { 
     _renderMenu: function(ul, items) { 
      var self = this, 
       currentCategory = ""; 
      $.each(items, function(index, item) { 
       if (item.category != currentCategory) { 
        ul.append("<li class='ui-autocomplete-category'>" + item.category + "</li>"); 
        currentCategory = item.category; 
       } 
       self._renderItem(ul, item); 
      }); 
     }, 

     select: function(event, ui) { 
     $("input#autocomplete_text").val(ui.item.value); 
     $("#autocomplete_form").submit(); 
     } 
    }); 
    $("#autocomplete_text").catcomplete({ 
     delay: 0, 
     source: function(request, response) { 
       $.ajax({ url: "<?php echo site_url('autocomplete/suggestions'); ?>", 
       data: { term: $("#autocomplete_text").val()}, 
       dataType: "json", 
       type: "POST", 
       success: function(data){ 
        response(data); 
       } 
      }); 
     } 
    }); 
}); 
</script> 

:私はこの試みている

    <form id="autocomplete_form" name="input" action="autocomplete/redirect" method="post"> 
         <input size="38" type="text" id="autocomplete_text" name="autocomplete_text" value="İlan kodu, kategori, ilan veya emlakçı ara" /> 
         <input type="hidden" id="data" name="data" value="0" /> 
         <input class="submit-button" type="submit" value=" EMLAK ARA " /> 
        </form> 

マイexample

である私は何をしたい、提案リストの項目をクリックした後にフォームを送信します。

ご協力いただければ幸いです。前もって感謝します。 $リンク変数が設定されていないか、あなたのアヤックスから配列がスルー渡していないことを意味リンク..:

+0

私の作品はPHPエラーとして投稿できません。正確に何を手助けしたいですか? – dannix

+0

@dannix questinoのタイトルを読んだことがありますか?私がしたいのは、提案リストの項目をクリックした後にフォームを送信することです。 – motto

+0

私ははいでしたが、提案を選択して提出したいとは理解していませんでした。 – dannix

答えて

1

は、選択を削除します。 Ajaxのもの

の作業例jsfiddle少ないです。

<script type="text/javascript"> 
$(document).ready(function() { 
$.widget("custom.catcomplete", $.ui.autocomplete, { 
    _renderMenu: function(ul, items) { 
     var self = this, 
      currentCategory = ""; 
     $.each(items, function(index, item) { 
      if (item.category != currentCategory) { 
       ul.append("<li class='ui-autocomplete-category'>" + item.category + "</li>"); 
       currentCategory = item.category; 
      } 
      self._renderItem(ul, item); 
     }); 
    } 
}); 
$("#autocomplete_text").catcomplete({ 
    delay: 0, 
    select: function(event, ui) { 
    $("#autocomplete_form").submit(); 
    }, 
    source: function(request, response) { 
      $.ajax({ url: "<?php echo site_url('autocomplete/suggestions'); ?>", 
      data: { term: $("#autocomplete_text").val()}, 
      dataType: "json", 
      type: "POST", 
      success: function(data){ 
       response(data); 
      } 
     }); 
    } 
}); 
}); 
</script> 
0

は、私はあなたには、未定義の変数を取得している..あなたが最初にあなたのPHPファイルをチェックする必要があります示唆しています。 ui.autocompleteのinit関数から機能し、Webドメインの面倒外に私たちのために編集を行いカテゴリで応答サーバー上catcomplete機能

組み込みPHPと信頼に移動:

+0

私は自分の質問を更新しました。フォームを送信することは問題ではない、問題は項目を選択した後にボタンを送信することである。 "onselect"のように – motto

+0

私が見る唯一の解決策は、クリックイベントを作成し、値を設定することです。そのためには、でカテゴリを囲むことをお勧めします。 $( '').click(function(){var item = $(this)).html();}; その後、送信ボタンをクリックしたときに、検索項目としてvar項目を送信するだけです。 – Alexander

関連する問題