2016-11-02 5 views
0

私は、データを処理する要素のdata-xxxの値を保存する動的ajax関数を構築しました。私は唯一のデータ値が与えられて、私はチェックコードの1行または2行を持っているように、指定されたデータ属性で動的にjavascript値を作成しますか?

var data_form = $(element).attr('data-form'); 
var data_index = $(element).attr('data-index'); 
var data_hide_error = $(element).data('hide-error'); 
var data_disable_blur = $(element).data('disable-blur'); 
var data_hide_success = $(element).data('hide-success'); 

:しかし、私は私が処理したいのAjaxリクエストに応じた値をとり、このコードを短くしたいです1つのデータ値がある場合は、その正確な名前の変数を作成する必要があります。

例:このアンカー<a href="#" data-index="1" data-form="#registerForm">send</a>をクリックし、私の関数はvar data_index = 1;var data_form = '#registerForm';という変数を自動的に作成します。

これをどのように達成できますか?

+0

を呼び出す関数内で使用する1つのオブジェクト内のすべてのデータの属性を返します。あなたの質問は明確ではありません。 '$(element).data( 'form');'が ' – mplungjan

+0

であれば十分ですが、これは単なる例であり、' $(element).attr( 'data-form');また、私は私の質問を非常に正確に述べました。特定のデータ属性のデータ属性値がある場合は、javascript変数にデータ属性値を保存します。この変数は、データ属性と同じ名前を持つ必要があります。 – AlexioVay

+1

'$(element).data();'を使うと、オブジェクトからすべての 'data-'属性をオブジェクトとして取得することができます – Andrey

答えて

2

おそらくあなたは、この意味:使用.dataのは()あなたは手の込んだしてください

$(function() { 
 
    $("a").on("click",function(e) { 
 
    e.preventDefault(); 
 
    console.log($(this).data()) 
 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> 
 
<a href="#" data-index="1" data-form="#registerForm">send</a>

+1

ありがとう!私はこれを知らなかった。 – AlexioVay

関連する問題