私は次のようなオブジェクトを持っています:
{
"headerSection": {
"text": "Some Text",
"color": "red",
"fontSize": "12px",
"backgroundColor": "#000",
"textAlign": "left"
}
}
ユーザーが別のフォントサイズを選択できるドロップダウンリストがあります14px, 16px .. 20px
。このドロップダウンの変更イベントfontSize
で、上記のオブジェクトのの値を変更したいので、次のようにします。
$('#font-size-ddl').change(function () {
var value = $(this).val();
headerObj.fontSize = value;
console.log(JSON.stringify(headerObj));
});
上記console.log
の出力は次のとおりです。
{
"headerSection": {
"text": "Some Text",
"color": "red",
"fontSize": "12px",
"backgroundColor": "#000",
"textAlign": "left"
},
"fontSize": "20px",
}
誰かが私が間違っていることを教えてもらえますか?
headerSection
fontSizeプロパティを更新する必要があります。
あなたの場合、コンパイラfontSize
はheaderObj
オブジェクトのプロパティを管理しますが、それを検出せず、オブジェクトの新しいプロパティを作成します。
let headerObj={
"headerSection": {
"text": "Some Text",
"color": "red",
"fontSize": "12px",
"backgroundColor": "#000",
"textAlign": "left"
}
}
$('select').change(function () {
var value = $(this).val();
headerObj.headerSection.fontSize = value;
console.log(JSON.stringify(headerObj));
}).trigger('change');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select>
<option value="20px">20px</option>
<option value="30px">30px</option>
</select>
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加