2017-10-13 14 views
1

json配列の特定の値を変更したい。詳細は、私は、このDOM持っている:データ属性を変更json値

<input class="fileupload" type="file" data-form-data='{"table_reference": "data_monitoring", "table_token" : "X43sd"}'>   

を私はこのコードを使用してjqueryのを使用して、データの属性を更新する方法を知っている:$(この).ATTR( 'キー'、 '値')

が、データ属性で特定のキーを変更する方法を、上記のDOM で例えば私はあなたが使用することができます任意の提案

答えて

3

ためtable_token

感謝を変更する必要があります値

$(".fileupload").data().formData.table_token = 123; 
 

 
console.log($(".fileupload").data().formData);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<input class="fileupload" type="file" data-form-data='{"table_reference": "data_monitoring", "table_token" : "X43sd"}'>

に特定のプロパティを設定するプロパティを参照して.data()要件は、あなたがHTMLElement.dataset

var new_token = "abc"; 

let data = JSON.parse($(".fileupload")[0].dataset.formData); 

data.table_token = new_token; 

$(".fileupload")[0].dataset.formData = JSON.stringify(data); 
+0

を使用することができますHTMLに反映されますdata-*を設定している場合、私はあなたを考えます'.data()。formData.table_token' –

+0

は機能しませんか? https://jsfiddle.net/3gd0qv2x/ – navotera

+0

@navoteraどういう意味ですか?このプロパティは '.data()'オブジェクトに設定されています – guest271314