【问题标题】:jQuery append function doesn't work again after I made a change on textarea在我对 textarea 进行更改后,jQuery 追加功能不再起作用
【发布时间】:2014-04-15 11:42:52
【问题描述】:

我有 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);
            });
        }
    }
});

如何让它发挥作用?

感谢之前

【问题讨论】:

  • 第一次单击随机播放按钮时,$("#result").val() 中的内容是什么?
  • 我对问题进行了更改以具体问题。谢谢
  • 通常控制台会告诉你错误
  • 我认为只有 $("#result").append($("#temp").val()) 函数在我手动填写 textarea 后不再起作用>

标签: jquery jquery-append


【解决方案1】:

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

因此,要覆盖 textarea 的所有内容,请使用:

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

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-09-02
    • 2022-01-07
    • 1970-01-01
    • 2011-09-21
    • 2013-03-17
    • 1970-01-01
    • 2013-09-19
    • 2019-10-07
    相关资源
    最近更新 更多