いくつかの背景:最近のプロジェクトで好奇心:動的なAjaxデータ変数名を使用できますか?
、私は様々な入力が更新された際に作られたいくつかのAjaxコールを処理するだろう合理jQueryのプラグインを作成してみました。
$("#email").updateChanges();
を次に、プラグインの中から、私は入力のid、値を収集
など、:私はちょうどそうのように、様々な入力にそれを呼び出すことができるように、私はプラグインとしてJavaScript関数を書きました問題:
私が実際にやりたかったが解決策が見つからなかったことは、ajaxに渡されるデータ変数の名前を動的に生成することでした。 inputName変数は、「パスワード」の代わりに、あるときにどのように私は{ password: inputValue }
の代わり{ email: inputValue }
としてAjax呼び出しのためのデータを提示しない...
jQuery.fn.updateChanges = function(){
this.bind('blur',function(){
var inputName = $(this).attr("name");
var inputValue = $(this).val();
$.post('/ajax/updateValue.php',
{ email: inputValue }, function(ret){
if (ret=='success') alert("all good!");
}
}
}
:この機能を考えると、より明確にする
"Eメール"?これは非常に具体的な例ですが、基本的には、データ変数の名前を個別の動的変数から読み取る方法を探しています。
私はwindow[inputName]
を試してみましたが、これは無理だと私はかなり確信しています。しかし、誰かがアイデアを持っているなら、私は非常に感銘を受けたでしょう。
ちなみに私たちは{ type: inputName, value: inputValue }
に行くことになってしまいましたが、PHP側で少し足が足りました(私には聞かないで、私はフロントエンドの人です:)。
ありがとうございます!
をどのように必要な変数名を通信することを計画しています関数?パラメータになりますか? – JorenB