2011-10-28 11 views
-1

私はasp.NETでアプリケーションを作成しています。MVC 3モデル(ビューエンジンRazor)を使用します。 jQueryオートコンプリートで適切な名前を検索して名前にEnterキーを押した後に、アプリケーションが適切なRadioButtonをチェックする方法を知りません。Enterキーを押した後、jQueryオートコンプリートを使用して検索名を検索します。

<script type="text/javascript"> 
    $(function() {      
     $("#tags").autocomplete({ 
      source: "/Home/TakeGry", 
      minLength: 1, 
      select: function (event, ui) { 
      // I suspect that something needs to add here 
      } 
     }); 
    }); 
</script> 

<table> 
    <tr> 
     <th> 
      <div class="demo"> 
       <div class="ui-widget"> 
        <label for="tags">Surowce: </label> 
        <input id="tags" /> 
        <input id="hiddenElementID" type="hidden" /> 
       </div> 
      </div> 
     </th> 
     <th> 

     </th> 
    </tr> 

@foreach (var item in Model) { 
    <tr> 
     <td> 
      @Html.DisplayFor(modelItem => item.Nazwa) 
     </td> 
     <td> 
      // One of these RadioButton's should be checked, when I hit enter 
      @Html.RadioButtonFor(modelItem => item.GraID, new { id = item.GraID }) 
     </td> 
    </tr> 
} 

答えて

0

検索の数時間後、私は私が入れた、答えを見つけました以下:

私は私のスクリプトを変更する必要があります:私は変更する必要があります(これはプリント名とラジオボタン)

<script type="text/javascript"> 
$(function() { 
    $("#tags").autocomplete({ 
     source: "/Home/TakeGry", 
     minLength: 0, 
     select: function (event, ui) { 
      if (ui.item) { 
       $('input[name="' +ui.item.value+ '"]').attr('checked', true);      
      } 
     } 
    }); 
}); 

とforeachの中その:

@Html.RadioButtonFor(modelItem => item.GraID, new { id = item.GraID }) 

へ:任意のヘルプ:)のため

<input type="radio" name='@item.Nazwa' id="radioButton" value="{ id = @item.GraID }" /> 

感謝。

0

この関数は文字列のコレクションのみを必要とします。あなたがスペースで区切られた文字列を取得し、手動でポストを行い、その後、アレイにスペース上のことを分割し、関数に渡すことができ :

$(function() { 
    var list; 
    $.post("/Home/TakeGry", { }, function(result) { 
     list = result.split(' '); 
    }); 


    $("#tags").autocomplete(list); 
}); 
+0

jQueryオートコンプリート機能は正常に機能しますが、オートコンプリートリストから何かを選択すると、適切なRadioButtonを自動的に選択する必要があります。私はページをリロードせずに非同期的に行う方法を知らない。 – tzm

+0

OK、このイベントハンドラの助けを借りてそれを行うことができるはずです: [link](http://docs.jquery.com/Plugins/Autocomplete/result#handler) –

関連する問題