在 wordpress 中,我正在进行 ajax 调用并发送此值
blow = \'blo\
但是当我在服务器端收到该值时,它有一个\额外
blow = \\'blo\
如您所见,\是额外的。我使用了 urldecode 但它也给了我相同的结果
请帮我找出我做错了什么
这是我的脚本,这里是我序列化表单并在表单中放置在文本框中blow =\'blo\
jQuery.ajax({
type: 'POST',
beforeSend: function () {
var Container = jQuery("#mainContainer");
var height = Container.height();
var width = Container.width();
jQuery('#le_form_container').css("display", "none");
Container.append('<div class="loadingOverlay" style="width: 100%; height: 100%;" ><img class="ajaxLoading" src="' + url + '/leasson_Evalution/images/ajax_loader_blue_512.gif" /></div>');
},
url: ajaxcontactajax.ajaxurl,
data: {
action: 'ajaxcontact_send_mail',
values: jQuery('#le_form').serialize().replace(/\+/g, '%20')
},
success: function (data, textStatus, XMLHttpRequest) {
//console.log(data);
if (data == 0) {
jQuery("#le_SucessDialog").html('');
jQuery('#le_SucessDialog').append("<p>Data is Submited</p>"); //alert(data is );
jQuery("#le_SucessDialog").dialog({
draggable: true
});
//console.log("tenp");
jQuery("#le_form")[0].reset();
//console.log("tenp");
}
//console.log(data);
},
error: function (MLHttpRequest, textStatus, errorThrown) {
alert(errorThrown);
},
complete: function () {
jQuery('#le_form_container').css("display","block");
jQuery("#mainContainer").find(".loadingOverlay").hide().remove();
jQuery("#le_form")[0].reset();
}
});}
最佳答案
使用stripslashes :
$values = stripslashes($_POST["values"]);
关于javascript - 如何在通过ajax发送值时处理编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24400637/