如何获取脚本';s在.append()中的值

本文关键字:append 何获取 获取 脚本 | 更新日期: 2023-09-27 18:22:05

这是我的下拉列表:

<div id="addCam"></div>
                            <div id="addDiv">
                                <select id="type1">
                                    <option value="">- Kiểu áo -</option>
                                    @foreach (var item in Model.teetypes)
                                    {
                                        <option value="@item.Image">@item.Name</option>
                                    }
                                </select>
                                <a class="btn btn-info btn-default" id="addBtnH" style="text-align:center" title="Thêm sản phẩm"><i class="fa fa-plus"></i></a>
                            </div>

这是我的javascript.append():

$(document).ready(function () {
    var count = 2;
    var maxAppend = 0;
    $("#addBtnH").click(function () {
        var name = $("#type1 option:selected").val();
        var name1 = $("#type1 option:selected").text();
        if (name == '') return;
        if (maxAppend >= 5) {
            $("#addDiv").hide();
            return;
        }
        $("#addDiv").show();
        $("#type1 option:selected").attr('disabled', 'disabled');
        $("#type1").val('');
        $("#addCam").append("<div class='widget' id='del" + count + "'><div class='widget-body'><div class='col-md-3'><span style='display:block'><img src='" + name + "' id='tee" + count + "' height='75'/></span></div>" +
            "<div class='col-md-1'><select id='color" + count + "' onchange='changeColor" + count + "()'>@foreach (var item in Model.teecolors){<option value='@item.Color' style='background-color: #@item.Color'></option>}</select></div><div id='dis" + count + "'>" + name1 + "</div>" +
            "<hr class='wide'><input type='text' name='input'><a class='btn btn-info btn-default' rel='"+name+"' id='delete" + count + "' style='text-align:center' title='Xóa sản phẩm'><i class='fa fa-trash'></i></a>" + @*str +*@
            "<script>$('#delete" + count + "').click(function(){var images = $(this).attr('rel'); $('#type1 option[value = "+"images"+"]').removeAttr('disabled');$('#del" + count + "').remove();});" + "<" + "/script>" +
            "<script type='text/javascript'>function changeColor" + count + "(){var eID = document.getElementById('color" + count + "'); var colorVal = eID.options[eID.selectedIndex].value; document.getElementById('tee" + count + "').style.background = '#' + colorVal;}" + "<" + "/script>" +
            "</div></div>");
        count = count + 1;
        maxAppend++;
    });
});

我的问题是,当我点击add按钮时,它会在append中添加div作为内容,并且已经添加的值将在dropdownlist中被禁用。在添加的div中,有一个删除按钮,当我点击它时,div将消失,禁用的属性值将被删除。我创建"images"来获取该按钮的attr("rl"),但我不知道如何让$("#type1 option[value=images]")理解"images’是一个值,而不是字符串?请帮帮我!

如何获取脚本';s在.append()中的值

将scirpts元素写入要评估的代码不是最佳实践。

您正在寻找的技术是连续使用jquery选择器来获取附加的节点并动态设置属性。考虑这个解决方案:

$("#addCam").append($('<ul>').attr('class', 'some-class')
                     .append($('<li>').attr('class', 'some-other-class')
                             .append($('<img>').attr('src', 'somePath'))
                            .on('click', liClickedHandler)));