javascriptのsetAttributeについて質問です。
JSONで情報取得したデータの中に「変更」と「削除」のボタン2つあります。
それぞれのbuttonに
javascriptのsetAttributeで“onclick=”と“ページ内リンク(モーダル表示)”を設定したいのですが、うまくいかず困っています。
[HTML] ———————————————————————
<span> <button class="change" id="changeID">変更</button> <button class="delete" id="deleteID">削除</button> </span>
————————————————————————————
[javascript] —————————————————————
body: function (ul, json) { $getJSON(json, function (data){ data.forEach(function(v) { var li, spans, buttons; li = document.createElement('li'); spans = makeSpans(v); spans.forEach(function (span) { li.appendChild(span); }); buttons = document.createElement('span'); Policy.const.button.forEach(function (val, i) { var button; button = document.createElement('button'); button.className = i === 0 ? 'change' : 'delete'; button.id = i === 0 ? 'changeID' : 'deleteID'; button.onclick = function (e) { i === 0 ? ChangeEvent(e) : deleteEvent(e) ; }; // button.setAttribute('onclick', 'location.href="#modal-chg01"'); // button.setAttribute('onclick', 'location.href="#modal-del01"'); button.textContent = val; buttons.appendChild(button); }); const button = li.appendChild(buttons); ul.appendChild(li); }); }); }
————————————————————————————
[HTML結果] —————————————————————
<span> <button class="change" id="changeID" onclick='location.href="#modal-del01"'>変更</button> <button class="delete" id="deleteID" onclick='location.href="#modal-del01"'>削除</button> <span>
————————————————————————————
当たり前なのですがこの記述では、リンク先がどちらも#modal-del01” になってしまいます。
setAttributeで別々のリンク先設定にしたい場合どのように記述すればよいですか?
初心者ですので、わかりやすくご教示いただけますと、助かります。
よろしくお願いします。
回答2件
あなたの回答
tips
プレビュー