jQuery更改输入类型=文本到文本区域
我有一个隐藏的领域。在drop事件之后,需要将其转换为“textarea” 这: 产生 属性无法更改 错误 此方法: 致:jQuery更改输入类型=文本到文本区域,jquery,forms,input,Jquery,Forms,Input,我有一个隐藏的领域。在drop事件之后,需要将其转换为“textarea” 这: 产生 属性无法更改 错误 此方法: 致: $('#myInput').detach().attr('type', 'textarea').val('HERE').insertAfter(marker); 行确实会导致文本框的值发生更改,所以选择器正在工作,并且元素被正确插入和删除 这是一个无法克服的安全问题吗?还是有办法做到这一点 您始终可以删除要更改的元素并添加新元素…您面临的问题是TextArea是一个元素
$('#myInput').detach().attr('type', 'textarea').val('HERE').insertAfter(marker);
行确实会导致文本框的值发生更改,所以选择器正在工作,并且
元素被正确插入和删除
这是一个无法克服的安全问题吗?还是有办法做到这一点 您始终可以删除要更改的元素并添加新元素…您面临的问题是TextArea是一个元素而不是属性 您应该删除以前的元素并替换为同名的新文本区域:
var myoldInput = $('#myInput');
var value = myoldInput.val();
$("<textarea id='myInput'></textarea>").before(myoldInput).val(value);
myoldInput.remove();
var myoldInput=$('#myInput');
var值=myolInput.val();
$(“”).before(myolInput).val(value);
myolInput.remove();
$(“值因为textarea
与input
是一个完全不同的元素,只需创建一个新的textarea
并删除input
即可。尝试以下操作:
$input = $("#myHiddenInput")
$textarea = $("<textarea></textarea>").attr({
id: $input.prop('id'),
name: $input.prop('name'),
value: $input.val()
});
$input.after($textarea).remove();
$input=$(“#myHiddenInput”)
$textarea=$(“”)。attr({
id:$input.prop('id'),
名称:$input.prop('name'),
值:$input.val()
});
$input.after($textarea.remove();
对于该记录,您向新文本区域传递id和名称的方式无效。它应该是id:input.attr(“id”)
和name:input.attr(“name”)
。
$('#myInput').detach().attr('type', 'textarea').val('HERE').insertAfter(marker);
var myoldInput = $('#myInput');
var value = myoldInput.val();
$("<textarea id='myInput'></textarea>").before(myoldInput).val(value);
myoldInput.remove();
$("<textarea>value</textarea").insertAfter($(parent).find('#excerpt'));
$(parent).find('input#excerpt').remove()
$input = $("#myHiddenInput")
$textarea = $("<textarea></textarea>").attr({
id: $input.prop('id'),
name: $input.prop('name'),
value: $input.val()
});
$input.after($textarea).remove();