在我对textarea进行更改后,jQuery追加功能不再起作用

时间:2014-03-11 18:00:59

标签: jquery jquery-append

我有1个按钮

<input type="button" id="scrape-button" value="Scrape" />
<textarea id="result" name="result"></textarea>
<textarea id="temp" name="temp" style="display: none;"></textarea>

当我点击刮擦按钮时,它可以正常工作

但是当我在textarea上手动填充某些东西然后再次单击“刮擦”按钮时,$("#result").append($("#temp").val())功能再次无效。为什么呢?

$(document).ready(function(){
    $("#scrape-button").click(function(){
        var i = 0;
        var start = $("#start").val();
        var num = $("#num").val();
        var pages = $("#pages").val();
        $("#result").val("");
        load(i, pages, start, num);
    });
    function load(i, pages, start, num) {
        if (i < pages){
            url = $("#category").val() + $("#collection").val();
            $("#url").text("h" + url);
            $("#temp").load("coba.php?url=" + encodeURIComponent(url) + "&start=" + start + "&num=" + num, function(){
                if ($("#result").val() != '') $("#result").append("\n");
                $("#result").append($("#temp").val());
                start = parseInt(start) + parseInt(num);
                i++;
                $("#current").text(i + " / " + pages);
                load(i, pages, start, num);
            });
        }
    }
});

如何使其有效?

之前谢谢

1 个答案:

答案 0 :(得分:1)

append上使用$("#result")不会像您期望的那样附加textarea的值 - 因为您需要使用val()函数。< / p>

相反,要覆盖textarea的所有内容,请使用:

$("#result").val($("#temp").val());

要附加textarea的内容,请使用类似于:

的内容
var $result = $("#result"); 
$result.val($result.val() + $("#temp").val());