【问题标题】:Replacing current div with jquery result用jquery结果替换当前div
【发布时间】:2021-08-04 17:50:46
【问题描述】:

我正在尝试获取 div 的最新数据并尝试替换它。 ajax 查询获取整个 html 页面。我从中找到right div。现在我需要用我收到的替换当前的right div

$.ajax(
        {
            url: url,
            type: "POST",
            dataType: "text",
            data: dataArray,
            
            success: function (data) {        
                var content = $(data).find('.right');
                $(".right").html(content[0])
            },
            error: function (jqXHR, textStatus, errorThrown) {
                console.log("Error");
            }
        });
        

它可以工作,但结果数据有一些奇怪的布局问题。设置 div 的正确方法是什么。

【问题讨论】:

  • 请提供 HTML 和 CSS,以及请求的响应。

标签: javascript php html jquery


【解决方案1】:

您正在选择元素并将其放入其中,而不是替换它。

var content = $(data).find('.right');
$(".right").html(content[0]);

所以你的输出看起来像

<div class="right">
  <div class="right">
    <p>New content</p>
  <div>
<div>

要么设置html

$(".right").html(content.html())

或者替换它

$(".right").replaceWith(content)

【讨论】:

  • 由于某种原因,javascript 函数不再起作用。会有什么具体原因吗?我已经尝试过 replaceWith 和 .html(
  • 因为当您替换内容时,它会替换内容。这就像擦除白板并重新绘制所有内容。事件不再被绑定,因为你附加它的原始元素被吹走了。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-10-13
  • 1970-01-01
  • 2019-05-04
  • 2013-07-18
  • 1970-01-01
  • 2018-03-15
  • 1970-01-01
相关资源
最近更新 更多