首页 > 解决方案 > 动态内容不听显示/隐藏功能

问题描述

我在循环内动态创建元素

m += '<input type="text" id="deadline_input_' + data[i].data.sequence + '" value="' + (data[i].deadline == "-" ? '' : data[i].deadline) + '" data-seq="' + data[i].data.sequence + '" class="hasDatepicker deadline_input" dateFormat="DD-MM-YYYY" style="display:none;" />';

m += '<span id="deadline_text_' + data[i].data.sequence + '">' + data[i].deadline + '</span>';

$('#results_projects').append(m);

但是当我使用

$("#deadline_input_" + $(this).data("seq")).show();
$("#deadline_text_" + $(this).data("seq")).hide();

在 ajax 调用中,它们没有改变。我知道 ajax 调用是成功的,因为我console.log("success")在控制台中添加了一个成功的内部

我完整的ajax调用是:

$.ajax({
                    url : '/section/projects',
                    type: "GET",
                    data: {
                        "action": "update_deadline",
                        "sequence": $(this).data("seq"),
                        "deadline": $(this).val(),
                    },
                    success: function(data) {
                        console.log("success");
                        $("#deadline_input_" + $(this).data("seq")).hide();
                        $("#deadline_text_" + $(this).data("seq")).show();
                    },
                    error: function(err) {
                        alert("There was an error updateing the Project");
                    }
                });

标签: jquery

解决方案


推荐阅读