如何使用jquery在input type =“text”和textarea之间切换

时间:2013-04-10 19:38:52

标签: jquery html text input textarea

请帮助我使用jquery在输入类型=“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>

1 个答案:

答案 0 :(得分: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);
    }
});

您可以根据需要在第二行设置cols和rows。

jsFiddle