0

所以我正在尝试使用 jQuery.ajax 而不是 html 表单来发帖。这是我的代码:

$.ajax({

type: 'POST', // GET is available if we prefer
url: '/groups/dissolve/$org_ID',
data: data,
success: function(data){
    $('#data_box').html(data);
    }
});

这是我的问题:

当这是一个 html 表单时,作为 URL 一部分的 $org_ID 实际上会提取变量并将其作为 URL 的一部分发送。现在这是在 jquery 中,它只是将 $org_ID 作为文本发送。我怎样才能弄清楚变量 $org_ID 是什么?我尝试在 javascript 中声明它,但我是 jquery/javascript 的新手,我真的不知道我在做什么。

谢谢!

4

3 回答 3

2

你是用 PHP 渲染这个吗?在这种情况下,您需要执行以下操作:

url: '/groups/dissolve/<?php print $org_ID; ?>'

否则,您需要执行类似的操作

var org_id = 'foo'; 
// or
var org_id = '<?php print $org_id ?>';
$.ajax({

type: 'POST', // GET is available if we prefer
url: '/groups/dissolve/'+org_ID,
data: data,
success: function(data){
    $('#data_box').html(data);
    }
});

与 PHP 不同,您不能在 javascript 中插入变量,您必须将它们与字符串连接起来。

如果您尝试发布变量 ( org_id),那么您应该将其放入数据中:

data['org_id'] = org_id;

$.ajax({

type: 'POST', // GET is available if we prefer
url: '/groups/dissolve/',
data: data,
success: function(data){
    $('#data_box').html(data);
    }
});

虽然您可以将参数连接到您的 url 以在 HTTP 请求中发送它们,但将它们放在数据对象中不仅可以让 jQuery 为您做更多的工作并转义 HTML 实体等(并保持您的代码更清洁),而且还可以让您轻松调试和玩弄ajax()设置。

于 2012-08-10T17:43:33.957 回答
0

您的数据来自何处的问题尚不清楚,但您可以使用以下内容:

url: '/groups/dissolve/'+orgId,

或者:

url: '/groups/dissolve/?orgId='+orgId,
于 2012-08-10T17:44:52.283 回答
0

简短的回答,连接

url: '/groups/dissolve/' + $org_ID
于 2012-08-10T17:47:21.080 回答