如何在多次DIV中显示文本框值

时间:2015-01-16 13:20:54

标签: jquery html

我正在尝试在keyup中的div中显示文本框中的值。我无法多次显示该值 输入多个DIV后需要加载文本框值。它仅在一个DIV中显示(第一个) 这是我的html和jquery代码。

<input type="textarea" id="mytextarea"></textarea>
<div id="preview"></div>
<div id="preview"></div>

$(document).ready(function () {    
  var content = $('#mytextarea').val();
  $('#mytextarea').keyup(function () {
      if ($('#mytextarea').val() != content) {
          content = $('#mytextarea').val().replace(/\\n/g, "<br />");
          $('#preview').text(content);            
       }
  });
});

3 个答案:

答案 0 :(得分:1)

您不能拥有多个ID相同的项目。给每个div同一个类并使用它。

<textarea type="textarea" id="mytextarea"></textarea>
<div class="preview"></div>
<div class="preview"></div>

$(document).ready(function () {    

  var content = $('#mytextarea').val();

  $('#mytextarea').keyup(function () {

      if ($('#mytextarea').val() != content) {
          content = $('#mytextarea').val().replace(/\\n/g, "<br />");

          $('.preview').text(content);            
       }
  });
});

答案 1 :(得分:0)

格式错误的HTML,一开始......

<input type="textarea" id="mytextarea"></textarea>

那应该只是:

<textarea id="mytextarea"></textarea>

正在文档树中解释HTML,如下所示:

<input type="text" id="mytextarea" />

可能会对jQuery产生影响......;)

答案 2 :(得分:0)

之前说过你不能多次拥有相同的id。我建议你切换到一个类(可以在多个元素之间共享)

HTML

<input type="textarea" id="mytextarea"></input>
<div class="preview_class" id="preview1"></div>
<div class="preview_class" id="preview2"></div>

JS

$(document).ready(function () {    

  var content = $('#mytextarea').val();

  $('#mytextarea').keyup(function () {

      if ($('#mytextarea').val() != content) {
          content = $('#mytextarea').val().replace(/\\n/g, "<br />");

          $('.preview_class').each(function(){$(this).text(content)});            
       }
  });
});