我正在使用以下代码
$(document).on('click', '#editDetailBtn', function () {
var input = $('<input id="#detailprimaryDescription" type="text" />');
input.val($('#detailprimaryDescription').text());
$('#detailprimaryDescription').replaceWith(input);
$('#editDetailBtn').hide();
$('#detailPrimaryCancel').show();
$('#detailPrimarySave').show();
});
$(document).on('click', '#detailPrimaryCancel', function () {
var input = $('<div id="#detailprimaryDescription" ></div>');
//input.val($('#detailprimaryDescription').text());
$('#detailprimaryDescription').replaceWith(input);
$('#editDetailBtn').show();
$('#detailPrimaryCancel').hide();
$('#detailPrimarySave').hide();
});
我想要实现的是,一旦点击取消,那么它会将输入字段转换回div
答案 0 :(得分:0)
我认为这就是你拍摄的内容。
你不需要在dom的id开头放置'#',它只用于引用元素。
所以基本上,每个地方都有:
var input = $('<input id="#detailprimaryDescription_input" type="text" />');
你应该做的事情是:
var input = $('<input id="detailprimaryDescription_input" type="text" />');
一旦我清理了它,它就像在小提琴中那样起作用。
我想说,只是显示和隐藏包含所有这些输入的div而不是操纵DOM来不断地创建/销毁它们,这将是一个更好的做法。