繁体   English   中英

在 Jquery 中选择项目时如何避免更改事件?

[英]How to avoid changing event when a item was selected in Jquery?

我正在创建选择以从数据库中选择数据,但为选择器设置ID="myselect"

但是,如果我选择了一个项目并更改为另一个项目,则此 ajax 将调用我只想在用户单击其项目时调用 ajax 一次。

$(document).on("click", "#myselect", function (e) {

    $.ajax({
        url: '/teller/assignTo',
        dataType: 'json',
        Method: 'get',
        success: function (data, status) {

            var userId = data.users;
            $.each(userId, function (key, value) {
                $('#myselect').append($("<option></option>").attr("value", key).text(value.name));
            });
        },
        error: function () {
            throw new Error("Could not load  " + data);
        }
    });
});

HTML

<select name="assign_user_id" id="myselect" class="form-control" ></select>

尝试这个

HTML

<select name="assign_user_id" id="myselect" class="form-control not-clicked" ></select>

查询

$(document).on("click", "#myselect", function (e) {
    if( $(this).hasClass( "not-clicked" ) ) {
        $.ajax({
            url: '/teller/assignTo',
            dataType: 'json',
            Method: 'get',
            success: function (data, status) {    
                var userId = data.users;
                $.each(userId, function (key, value) {
                    $('#myselect').append($("<option></option>").attr("value", key).text(value.name));
                });
            },
            error: function () {
                throw new Error("Could not load  " + data);
            }
        });
        $(this).removeClass("not-clicked");
    }
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM