【问题标题】:Ajax response from php, echoing span inside div?来自php的Ajax响应,在div内回显span?
【发布时间】:2016-04-01 14:49:39
【问题描述】:

我正在使用 Ajax 将数据发布到我的 php 文件,然后在 div 中检索它的响应。 所以我正在做的是回显<span class="messageError">Insuficient points!</span>以防出现错误,<span class="messageSuccess">Your request was successfully sent!</span>以防万一一切都像预期的那样。 在客户端我有这个功能:

$.ajax({
    url: 'newRequest.php',
    data: myData,
    type: 'post',
    dataType: 'html',
    success: function(result){
        $('.returnMessage').text(result)
    }
});

“returnMessage”是将加载响应的 div。一切正常,除了输出不是在 div 内创建跨度而是加载整个字符串 <span class="messageError">Insuficient points!</span>...

如何使函数在 div 内创建跨度而不是将标签写为字符串?谢谢!

【问题讨论】:

  • 使用 .html() 而不是 .text()

标签: php jquery ajax post


【解决方案1】:

只需更改代码即可:

success: function(result){
    $('.returnMessage').html('<span class="messageError">' + result + '</span>');
}

或者如果&lt;span&gt;已经生成,直接改成.html()

success: function(result){
    $('.returnMessage').html(result);
}

【讨论】:

  • 但是 PHP 也会返回 &lt;span&gt; 元素,它可能有不同的类。
  • @RoryMcCrossan 我刚看到这个Everything works fine except for the output that instead of creating a span inside
  • 我不记得这件事有点愚蠢。但是我在这些代码上花费了太多时间,我的思想开始失败。谢谢你!
【解决方案2】:

使用html() 方法作为text() 编码值:

$('.returnMessage').html(result)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-16
    • 1970-01-01
    • 2014-12-16
    • 2016-12-28
    • 2017-11-02
    • 1970-01-01
    相关资源
    最近更新 更多