我需要使用url结构发出json请求,例如:site.com/page?id = 123
如何通过请求传递变量,然后将结果返回到页面?
<input type='text' id='theInput'>
<input onclick='getIt(); return false;' />
<div id="results"></div>
<script>
function getIt(){
var x = ($j('#theInput').val() );
$j.getJSON("http://site.com/page?id=",
{
//how do i append x to request?
},
);
}
</script>
答案 0 :(得分:1)
试试这样:
var id = $j('#theInput').val();
$j.getJSON('http://site.com/page', { id: id }, function(result) {
// success
});
我还建议你使用不引人注目的javascript:
<input type="text" id="theInput" />
<input type="button" id="btn" value="Click me" />
<div id="results"></div>
然后在另一个javascript文件中:
$(function() {
$('#btn').click(function() {
var id = $j('#theInput').val();
$j.getJSON('http://site.com/page', { id: id }, function(result) {
// manipulate the results
});
return false;
});
});
此外,您应确保尊重same origin policy或您的AJAX请求可能不起作用。验证http://site.com/page
是否与托管发送AJAX请求的页面的域相同。如果不是这种情况,您可以将服务器配置为发送JSONP响应。