3

我有这个 HTML 标记:

<div id="destination">

</div>

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

<button id="clicker">Click me</button>​

而这个 jQuery 片段

$(document).on('click', '#clicker', function(event){

    var newCat = $('#test').val();
    $(newCat).prepend("#destination");
       alert(newCat);
 });​

警报文本确实是字段中输入的文本,但文本并没有以 div 结尾#destination

请参阅此 jsfiddle 示例:http: //jsfiddle.net/FaAY4/

4

4 回答 4

3

你必须这样做:

$(document).on('click', '#clicker', function(event){

    var newCat = $('#test').val();
    $("#destination").prepend(newCat );
       alert(newCat);
        });
于 2012-11-16T13:25:19.053 回答
2

你使用prepend()不正确。语法是:

$(targetElement).prepend(newContent);

在您的具体示例中像这样使用:

$("#destination").prepend(newCat);
于 2012-11-16T13:27:52.167 回答
1

您为什么要尝试将元素添加到值中?

var newCat = $('#test').val();

上面的行将为您提供文本框的值。

$(newCat) 

不会对应任何元素。

于 2012-11-16T13:26:28.940 回答
1

我认为您正在交换源和目标,即:

$(document).on('click', '#clicker', function(event){
    var newCat = $('#test').val();
    $('#destination').prepend(newCat);
       alert(newCat);
});​

小提琴更新

于 2012-11-16T13:27:19.563 回答