传递变量进入URL
问题描述:
我想要的广告两个表单元素的值到一个功能,并能得到第一个加入,但不能制定出正确的方式为第二编码。传递变量进入URL
$(function() {
$('#form_orderTracking').click(function(){
$('#CustomerDetails').load('TrackOrder1.asp?OrderID=' + $('#orderID').val());
});
});
我想添加值的EmailAddress的字段,以便读取网址:
TrackOrder1?OrderID=123456&[email protected]
答
而是追加查询字符串的URL,你可以把它传递给.load
作为第二参数。如果你传递一个对象时,它会使用POST
,如果你传递一个字符串,它会使用GET
(如你的例子)。
$.param
转换对象为字符串,所以它使用GET
。
$('#CustomerDetails').load('TrackOrder1.asp', $.param({
orderID: $('#orderID').val(),
EmailAddress: emailAddress
}));
或者你可以附加到你的字符串,像这样:
$('#CustomerDetails').load('TrackOrder1.asp?OrderID=' + $('#orderID').val() + '&EmailAddress=' + emailAddress);
+1
+1对于'。.param()'。不要经常看到这一点。 – Sampson 2012-04-27 20:18:55
答
var url = 'TrackOrder1.asp?OrderID=' + uriEncodeComponent($('#orderID').val()) + '&EmailAddress=' + uriEncodeComponent(email);
$('#CustomerDetails').load(url);
这也是最好通过uriEncodeComponent()
运行值,以确保它们被正确编码。
' 'TrackOrder1.asp?订单id =' + $( '#单编号')。VAL()+ '&EmailAddress的=' + email'? – 2012-04-27 20:12:01
@Darren库克刚刚添加的OrderID,不要说什么火箭。 – 2012-04-27 20:17:40