【问题标题】:Store text with line breaks in hidden input在隐藏输入中存储带有换行符的文本
【发布时间】:2011-08-05 20:38:45
【问题描述】:

我想将 div 的任何非隐藏部分的文本输出存储在隐藏的输入文本字段中。但是,该 div 包含 <br/> 标签,并且这些标签没有被存储。

我用来在输入中存储 div 的代码是:

function updateHidden()
{
    var clone = $('#coverSample').clone()
                        .appendTo('body')
                        .find(':hidden')
                        .remove()
                        .end()
                        .remove();

    //var content = clone[0].outerHTML || 
    var myText = clone.html();
    $("#coverToSubmit").val(myText);

    //$('<div>').append(clone).html();
} 

如何确保换行符也存储在输入中?

【问题讨论】:

    标签: jquery html input line-breaks


    【解决方案1】:

    使用 jquery data 方法来存储与 dom 元素关联的数据。

    【讨论】:

      【解决方案2】:

      你为什么不干脆做:

      var myText = clone.html();
      $("body").data("coverToSubmit", myText);
      

      然后,使用

      $("body").data("coverToSubmit");
      

      提取数据

      【讨论】:

        【解决方案3】:

        我相信这是因为您使用的是clone()。为什么不直接做var clone = $('#coverSample').html()?这也应该将 HTML 标记保存在里面。

        更新:下面是它的工作原理:http://jsfiddle.net/Mt444/

        【讨论】:

          猜你喜欢
          • 2022-01-05
          • 2011-03-09
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-06-26
          • 1970-01-01
          • 2012-04-09
          • 1970-01-01
          相关资源
          最近更新 更多