如何使用append use javascript或jquery更改输入中的类值

时间:2016-03-03 08:35:00

标签: javascript jquery

如何在输入中更改名称类这是代码HTML:

<div id="c">
    <div class="aaa">
        <input id="b" name="aa" class="a" />
        <input id="b" name="aa" class="a nhay" />
        <input id="b" name="aa" class="a" />
    </div>
</div>

Javascript:

$(document).on('keyup', '.nhay', function (e) {
    if (e.keyCode == 13) {
        $(this).removeClass('a nhay');

        $('#c').append('<div class="aaa"><input id="b" name="aa" class="a"/><input id="b" name="aa" class="a nhay"/><input id="b" name="aa" class="a"/></div>');
    }
});

当我按下

时,我不喜欢这样

退出HTLM:

<div id="c">
    <div class="aaa">
        <input id="b" name="aa" class="a" />
        <input id="b" name="aa" class="new name" />
        <input id="b" name="aa" class="a" />
    </div>
</div>

2 个答案:

答案 0 :(得分:2)

您不需要替换元素,只需添加新类:

$(document).on('keyup', '.nhay',function(e) {
    if (e.keyCode == 13) {
        $(this).removeClass('a nhay').addClass('new name');
    }
});

您甚至可以将其缩短为仅调用一次toggleClass()

$(this).toggleClass('a nhay new name');

另请注意,同一文档中多个元素具有相同的id属性无效,如果要将这些元素组合在一起,则应将其更改为类。

答案 1 :(得分:0)

注意:DOM中的元素应该共享相同的id标记。例如,您不应该有3个输入元素都具有相同的id =“b”。

要更改类,可以使用.removeClass(),后跟.addClass()jQuery方法:

// select the input element with id=b
$("input#b").on('keyup', function(e) {
    // remove classes "a" and "nay", add classes "new" and "name"
    $(this).removeClass("a nhay").addClass("new name");
});