[英]encoding and decoding url issue with ajax
在通过ajax发送到php页面之前,如何在jquery中编码多个URL,以及如何在php页面中对其进行解码。
这是html:
<form method="post">
<textarea id="multiple_url"></textarea>
<button id="check_url">Check</button>
</form>
<div id="Check_result"></div>
这是jquery:
$('#check_url').click(function(){
var multiple_url = $('#multiple_url').val();
$.ajax({
type: "POST",
url: "urls.php",
data: multiple_url=' +multiple_url,
success: function(results) {
$('div#Check_result').html(results);
}
});
}
这是urls.php:
$multiple_url = $_POST['multiple_url'];
echo $multiple_url;
现在在textarea中,当我这样发布时:
http://yahoo.com
http://facebook.com
http://google.com
我得到以下结果:
http://yahoo.com http://facebook.com http://google.com
但是当我这样发布时:
http://yahoo.com
https://www.facebook.com/photo.php?fbid=540632575958397&set=a.215213765166948.56326.100000349796150&type=1&theater
http://google.com
我得到了坏的输出,如下所示:
http://yahoo.com https://www.facebook.com/photo.php?fbid=540632575958397
这里发生的是它忽略了URL中"&"
之后的所有内容。
我该如何解决这个问题?
将data
传递给对象,而不是字符串。
data: { multiple_url: $('#multiple_url').val() }
然后,jQuery将为您处理转义数据。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.