0

そのため、html フォームの代わりに jQuery.ajax を使用して投稿しようとしています。これが私のコードです:

$.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 で変数を補間することはできません。変数を文字列と連結する必要があります。

変数 ( ) を POST しようとしている場合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 に答える