gpt4 book ai didi

javascript - 为什么 jQuery 返回数据没有按预期工作?

转载 作者:行者123 更新时间:2023-12-02 14:28:30 27 4
gpt4 key购买 nike

在我的网页中,我使用 jQuery/Ajax 来保存表单数据。使用 php 保存数据后,我显示如下成功消息:

if($sql){
$sql_result[] = "<div class='success'>updated</div>";
}

echo end($sql_result);

在 Ajax 返回数据中,我正在检查消息是否包含更新的条件,然后我将隐藏 html 元素,但它不起作用。

这是我的 jQuery 代码:

function save_email (element, event) {

e = $(element);
event.preventDefault();
var formData = new FormData(e.parents('form')[0]);

$.ajax({
data : formData,
cache : false,
contentType: false,
processData : false,

url : 'save_email.php',
type : 'POST',
xhr : function () {
var myXhr = $.ajaxSettings.xhr();
return myXhr;
},
success : function (data) {
$("#email_success").html(data);
//$("#email_success").show('slow').delay(3000).hide('slow');
if(data == "<div class='success'>updated</div>" ) {
$("#save_email_button").hide('slow');
$(".delete_ex_email_label").hide('slow');
}
},
});
}

控制台日志数据

enter image description here

更新:

alert(data) 显示的是这样的:

enter image description here

最佳答案

在 php 文本/html 输出中出现额外空格的情况并不罕见

这是使用 json 和检查对象属性更容易的原因之一,尤其是像您一样比较复杂的字符串。

然而,在比较字符串结果时使用trim()通常是一个好主意

尝试

$.trim(data) === "<div class='success'>updated</div>") 

关于javascript - 为什么 jQuery 返回数据没有按预期工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38035552/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com