Событие изменения триггера выпадающего списка



Я хочу вызвать событие изменения выпадающего списка в $(document).готов с помощью jQuery.



У меня есть каскадный выпадающий список для страны и государства на странице сведений о пользователе. как я могу установить значение (которое берется из БД на основе идентификатора пользователя) для страны и государства в MVC с C#.

583   5  

5 ответов:

Я не знаю, что много JQuery, но я слышал, что он позволяет запускать собственные события с этим синтаксисом.

$(document).ready(function(){

    $('#countrylist').change(function(e){
       // Your event handler
    });

    // And now fire change event when the DOM is ready
    $('#countrylist').trigger('change');
});

перед вызовом метода trigger() или change() необходимо объявить обработчик событий change, иначе он не будет запущен. Спасибо за упоминание @LenielMacaferi.

дополнительная информация здесь.

попробуйте это:

$(document).ready(function(event) {
    $('#countrylist').change(function(e){
         // put code here
     }).change();
});

определите событие изменения и немедленно запустите его. Это гарантирует, что обработчик событий определен перед его вызовом.

может быть поздно, чтобы ответить на оригинальный плакат, но кто-то еще может извлечь выгоду из стенографической нотации, и это следует за цепочкой jQuery и т. д.

цепочка jquery

Если вы пытаетесь связать выпадающие списки, лучший способ сделать это-иметь сценарий, который возвращает предварительно созданное поле выбора и вызов AJAX, который запрашивает его.

вот документация для метода Ajax jQuery, если вам это нужно.

$(document).ready(function(){

    $('#countrylist').change(function(e){
        $this = $(e.target);
        $.ajax({
            type: "POST",
            url: "scriptname.asp", // Don't know asp/asp.net at all so you will have to do this bit
            data: { country: $this.val() },
            success:function(data){
                $('#stateBoxHook').html(data);
            }
        });
    });

});

затем есть промежуток вокруг вашего государства выберите поле с идентификатором "stateBoxHook"

попробуйте это:

$('#id').change();

работает для меня.

на одной строке вместе с установкой значения: $('#id').val(16).change();

в качестве альтернативы вы можете поместить атрибут onchange в сам выпадающий список, что onchange вызовет определенную функцию jquery, подобную этой.

<input type="dropdownlist" onchange="jqueryFunc()">

<script type="text/javascript">
$(function(){
    jqueryFunc(){
        //something goes here
    }
});
</script>

надеюсь, что это поможет вам, и обратите внимание, что этот код является просто черновик, не тестируется на любой ide. спасибо

Comments

    Ничего не найдено.