文本框的输入值以预先添加未组织的列表(Javascript)

时间:2014-07-26 16:27:01

标签: javascript textbox html-lists message prepend

我希望将用户输入“typetextbox”的内容添加到“messagebox”UL之前。

HTML code:

<ul id="messagebox">
<li></li>
</ul>

<div>
<input type="text" id="typetextbox" maxlength="120" autocomplete="off" />

<button id="submit"> </button>
</div> 

使用Javascript:

$(document).ready(function(){

$('#submit').click(function(){
    var message = $('#typetextbox').val();
    $('#messagebox').prepend("<br/>");
});
});

如果我在Prepend括号中键入内容,那就是显示的内容,但是这个代码现在没有显示我在提交时写入文本框的任何文本。为什么?如何获取添加到前置列表中的文本框的值?

我确定这是一个我忽略的简单问题,但任何帮助都将不胜感激!

3 个答案:

答案 0 :(得分:2)

$(document).ready(function(){    
   $('#submit').click(function(){
      var message = $('#typetextbox').val();
      $('#messagebox').prepend(message + "<br/>");
   });
});

或者你的意思是:

$('#messagebox').prepend("<li>" + message + "</li>");

如果您希望对用户输入的HTML特殊字符进行编码(以便在文本框中输入<b>bold</b>保留<b>bold</b>并且不提供粗体文字),尝试

$('#messagebox').prepend($("<li />").text (message));

答案 1 :(得分:0)

您没有在textarea的任何值前面添加,而只是在前面添加换行符。再看看你的代码。

答案 2 :(得分:0)

非常感谢JohnB !!!

我最初有&lt;消息+
&gt;在,但每次我点击提交时发现,&#34;消息+&#34;被列在清单之前。像在换行符上添加引号一样简单就可以了。非常感谢你!

快速问题,我的按钮仅在我点击时才有效。当我按Enter键时如何让它提交?

再次感谢!