3

请帮助我处理此代码或使用 jquery 在 input type="text" 和 textarea 之间切换的其他工作代码。

$(function(){
$("a#change").toggle(function(){
  var input = document.getElementById('text'),
  textarea  = document.createElement('textarea');
  textarea.id    = input.id;
  textarea.cols  = 40;
  textarea.rows  = 5;
  textarea.value = input.value;
  input.parentNode.replaceChild(textarea,input);
  return false;
},function(){
  textarea.parentNode.replaceChild(input,textarea);
  return false;
});

});

<input type="text" name="text" id="text" /><a href="#" id="change">change</a>
4

1 回答 1

4

以下内容应该适合您。

var textbox = $("#textbox");
var textarea = $("<textarea id='textarea'></textarea>");
$("#change").click(function () {
    //Check for textbox or textarea
    if ($("#textbox").length === 1) {
        //Copy value to textarea
        textarea.val(textbox.val());
        //Replace textbox with textarea
        textbox = textbox.replaceWith(textarea);
    } else {
        //Copy value to textbox
        textbox.val(textarea.val());
        //Replace textarea with textbox
        textarea = textarea.replaceWith(textbox);
    }
});

您可以在需要的第二行中设置列和行。

jsFiddle

于 2013-04-10T23:46:17.933 回答