如何在AJAX数据中包含变量

时间:2013-10-02 14:42:16

标签: javascript jquery ajax

我正在尝试发送Ajax请求,但我想要包含已在发送到服务器的数据中定义的变量。

我不太确定如何逃避数据部分并将变量放在我所声明的位置......

$.ajax({                                      
  url: './json/delete.php',                       
  type: 'POST',
  async: false,
  data: { SD_FieldDisplayName : <VARIABLE HERE>, 
          SD_FieldSeq : <VARIABLE HERE>, 
          SD_TableSeq : <VARIABLE HERE>, 
          SD_ViewName : <VARIABLE HERE> }                      
  dataType: 'json',                   
  success: function(result)          
  {

4 个答案:

答案 0 :(得分:1)

您忘记了data对象后的逗号。

$.ajax({
    url: './json/delete.php',
    type: 'POST',
    async: false,
    data: { SD_FieldDisplayName : <VARIABLE HERE>,
            SD_FieldSeq : <VARIABLE HERE>,
            SD_TableSeq : <VARIABLE HERE>,
            SD_ViewName : <VARIABLE HERE> },
                  // You need a comma here ^
    dataType: 'json',
    success: function(result)
    {
    }
});

答案 1 :(得分:0)

您只需引用value的{​​{1}}中的变量:

key

答案 2 :(得分:0)

你快到了。您需要在要通过AJAX请求发送的变量中包含。这是一个剥离的例子。我用$ .post但$ .ajax基本相同。它从带有.formclicked类的表单中获取数据(其他代码标签带有类.formclicked。它通过'{relationship}数据发送$_POST['relations']和方法标志$_POST['method']。第一个是由表单定义,第二个是由表单中的提交按钮定义的,不是由serialise发送的.serialise函数将#an_id中的表单数据转换为适合AJAX的形式。

            // Comments
            jQuery(document).on('submit','#an_id' ,function(){
                $data = jQuery(this).serialize();
                var selector = jQuery(this);
                $method = jQuery(this).find(".formclicked").attr('value'); // Get clicked form
                jQuery.post('your_ajax_form.php', {action:'hook_update',relations:$data, method:$method},
                    function(answer){
                        if(jQuery.isNumeric(answer)){
                            if(answer) {  
                                   // Response Code Based on Condition
                            }
                            else {
                                    // Handle failures
                   jQuery(selector).find(".formclicked").removeClass('.formclicked');

                            } 
                        }

                        else {

                        }

                        return true;
                    }
                );
                return false; // Prevent the page from refreshing
            });

答案 3 :(得分:-1)

请使用这个:

var val1;
var val2;
var val3;
var val4;

$.ajax({                                      
  url: './json/delete.php',                       
  type: 'POST',
  async: false,
  data: { SD_FieldDisplayName : val1 , SD_FieldSeq : val2 , SD_TableSeq : val3 , SD_ViewName : val4 },                     
  dataType: 'json',                   
  success: function(result)          
  {

  }
  });

请在函数内部定义要调用此ajxa调用或全局

的变量