2016-07-19 4 views
0

$ .ajax関数を編集して所有権 "データ"を含めたり、値を受け取ったり、削除したりする方法はありません。ダイナミックですか?例えば:

変数に値があります:

var parametro = "{id: "1"}"; 

     $.ajax({ 
      type: "POST", 
      url: url, 
      data: parametro , 
      async: async, 
    ... 

なし変数、または、無価値がない

彼女へ:

var parametro = ""; 

    $.ajax({ 
      type: "POST", 
      url: url, 
      async: async, 
    ... 

だから、私の考えはそのようなものですが、

$.ajax({ 
      type: "POST", 
      url: url, 
      if(parametro) 
      { 
       data: parametro, 
      },   
      async: async, 
    ... 

私のような他のものを試してみました

data: undefined 
data: "" 
data: null 

しかし、何も動作していないようです。空の "data"プロパティを送信する唯一の方法は、完全に削除することです。したがって、2つの異なる機能を作成することに加えて、1つは「データ」プロパティを持ち、もう1つは彼女を伴わずに、何か解決策がありますか?

ありがとうございます。私の知る限り、私は何のデータが、その後何のニーズがAJAXコールしないように場合の条件であれば、このような

if(parametro){ 
    $.ajax({ 
     type: "POST", 
     url: url, 
     data: parametro , 
     async: async, 
     ... 
     }); 
}else{ 
    $.ajax({ 
     type: "POST", 
     url: url, 
     async: async, 
    ... 
} 
+0

あなたの主な言語はポルトガル語である場合は、[StackOverflowの全角ポルトガル語](HTTP上での投稿場合は、それが良いだろう。このよう

pt.stackoverflow.com/)。 –

+0

申し訳ありませんが、私は質問を翻訳しようとしました。 –

+0

ajax呼び出しの外でif条件を確認してください –

答えて

0

、 おもう。

0

として$.ajaxの外では、

if(parametro) 
    { 
      $.ajax({ 
      type: "POST", 
      url: url, 
      data: parametro,   
      async: false, 
      }); 
} 

をこの方法を試して置くことをお勧め を知っているよう

1

これらは両方ともオブジェクトなので、jQuery.extend()を使用してオプションオブジェクトを拡張できます。

var parametro = { 
     id: "1" 
    }; 

var defaults = { 
     type: "POST", 
     url: url, 
     async: async, 
     ... 
    }; 

var options = $.extend(defaults, parametro); 

$.ajax(options); 

リンク://:

https://api.jquery.com/jquery.extend/

関連する問題