Enter tuşuna bastıktan sonra jQuery otomatik tamamla seçeneğini kullanarak arama yapın - RadioButton'u seçin

Ben asp.NET'te bir uygulama yazıyorum, MVC 3 modelini (view engine Razor) kullanıyorum. jQuery otomatik tamamlamada uygun bir isim aradıktan sonra ve adın üzerine Enter tuşuna basıldıktan sonra nasıl yapılacağını bilmiyorum, uygulama uygun RadioButton'u kontrol edecektir.

<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">
                    
                    <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>
}
1

2 cevap

Bu işlev sadece dizelerin bir koleksiyonunu gerektirir. boşluk ayrılan bir dize alan ve bunu bir diziye uzaya bölen ve işleve ileten manuel bir posta gönderebilirsiniz:

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


    $("#tags").autocomplete(list);
});
0
katma
Tamam, ben bu eventhandler yardımı ile yapabilmeniz gerektiğini düşünüyorum: bağlantı
katma yazar Mats Edvinsson, kaynak
Benim jQuery otomatik tamamlama işlevi iyi çalışıyor, ancak otomatik tamamlama listesinden bir şey seçtiğimde, uygun RadioButton otomatik olarak seçilmelidir. Sayfayı yeniden yüklemeden, eşzamansız olarak nasıl yapılacağını bilmiyorum.
katma yazar tzm, kaynak

Birkaç saat aradıktan sonra, aşağıda belirttiğim cevabı buldum:

Komutumu şu şekilde değiştirmeliyim:

<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);                    
            }
        }
    });
});

Ve foreach'da (hangi baskı isimleri ve RadioButtons) bunu değiştirmeliyim:

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

Kime:

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

Herhangi bir yardım için teşekkürler :).

0
katma