龙空技术网

Bootstrap Table 点击下拉框进行AJAX请求(update

PEK5SHL 148

前言:

目前咱们对“phpajaxdatatable”大概比较关怀,大家都需要学习一些“phpajaxdatatable”的相关资讯。那么小编也在网上搜集了一些对于“phpajaxdatatable””的相关知识,希望我们能喜欢,朋友们一起来学习一下吧!

昨天在测试的时候,发现第一次点击下拉框可以进行AJAX请求获取清单,但是选择以后,发现值并没有传递,怀疑是off("click")导致下一步Change的Event没有执行,所以更改如下,当click后立即off, 然后结束后再open,这样就可以获取选择的值了

{                    field: "rpt_sn",                    title: "Report List",                    switchable: true,                    sortable: false,                    align: "center",                    valign: "middle",                    halign: "center",                    events: {                        "click .act_task_list": function (e, value, row, index) { //点击下拉框动作                          $("select[id='act_task_list" + index + "']").off("click"); //取消每次的点击,避免重复加载                            var slic = row.slic_slic;                            $.ajax({                                type: "POST",                                url: "json/inb_json.php",                                contentType: "application/x-www-form-urlencoded", // 如果是post必须定义                                dataType: "json",                                data: {                                    action: "q_rpt_list",                                    slic: slic,                                },                                cache: false,                                async: false, //重要                                success: function (data) {                                    for (var i = 0; i < data.length; i++) {                                        $("select[id='act_task_list" + index + "']").append(                                            "<option value=" + data[i].rpt_sn + ">" + data[i].rpt_sn + "</option>"                                        );                                    }                                },                            });                            $("select[id='act_task_list" + index + "']").on("click"); //打开click, 以便下面的change后可以获取值                        },                        "change .act_task_list": function (e, value, row, index) { //下拉框改变后,刷新bootstrap table数据,否则getData会获取不到                            value = e.currentTarget.value;                            $("#full_rpt_list").bootstrapTable("updateCell", {                                index: index,                                field: "rpt_sn",                                value: value,                                reinit: false,                            });                        },                    },                    formatter: function (value, row, index) {                        return (                            "<select class='form-control act_task_list' name='act_task_list' id='act_task_list" +                            index + "'></select>"                        );                    },                },

标签: #phpajaxdatatable