チェックボックスをオンにした場合、value
とdata-cat
というフォームからフォームを作成しました。 stackoverflowのおかげで、私はフォームの値を得ることができましたが、jquery
からデータ属性を達成するための満足な答えを得ることができません。チェックボックスがチェックされている場合にデータ属性を取得するには
HTML:
<div class="price-col-title-wrap">
<h4>Immer enthalten</h4>
<!-- <h3><span>CHF</span> <span id="immer-total">0</span>.-</h3> -->
<input type="checkbox" id="c1" class="immer" value="50" data-cat="Installation Wordpress" name="cc" onclick="return false" checked/>
<label for="c1"><span> </span> Installation Wordpress</label> <br/>
<input type="checkbox" id="c2" class="immer" value="50" data-cat="Basis SEO und Dynamic Sitemap" name="cc"/>
<label for="c2"><span> </span> Basis SEO und Dynamic Sitemap</label> <br/>
<input type="checkbox" id="c3" class="immer" value="50" data-cat="Adresse, Öffungszeiten, Telefon mit Call-Funktion für mobil" name="cc"/>
<label for="c3"><span> </span> Adresse, Öffungszeiten, Telefon mit Call-Funktion für mobil</label> <br/>
<input type="checkbox" id="c4" class="immer" value="50" data-cat="Seite für Datenschutz und Impressum" name="cc"/>
<label for="c4"><span> </span> Seite für Datenschutz und Impressum</label> <br/>
<input type="checkbox" id="c5" class="immer" value="50" data-cat="Social Media Follow (FB, G+, Twitter)" name="cc"/>
<label for="c5"><span> </span> Social Media Follow (FB, G+, Twitter)</label> <br/>
<input type="checkbox" id="c6" class="immer" value="50" data-cat="Kontaktformular + Google Map API" name="cc"/>
<label for="c6"><span> </span> Kontaktformular + Google Map API</label> <br/>
<h3><span>CHF</span> <span id="immer-total">0</span>.-</h3>
<input id="input" type="text" value="0"/>
<textarea id="t"></textarea>
</div>
私はすべてのチェックボックスから値を達成するためにjqueryのを持っていますが、それぞれのチェックボックスに一意の名前が含まれている別の属性data-cat
があります。 私の問題は、私が使用しています今のjs件までtextarea
そのid=t
にチェックインdata-cat
を一覧表示することである:これは、すべてのチェックボックス
そして後から値を取得するために使用され
var inputs = document.getElementsByClassName('immer'),
total = document.getElementById('immer-total');
for (var i=0; i < inputs.length; i++) {
inputs[i].onchange = function() {
var add = this.value * (this.checked ? 1 : -1);
total.innerHTML = parseFloat(total.innerHTML) + add
var new_total = parseFloat(document.getElementById('input').value);
console.log(new_total);
document.getElementById('input').value=new_total + add
}
}
stackoverflowの多くのクエリ私は取得するjsを取得
function updateTextArea() {
var cats = $('.immer').map(function(){
return this.dataset.cat
// or $(this).attr('data-cat')
}).get()
}
$(function() {
$('#price-col-title-wrap input').click(updateTextArea);
updateTextArea();
});
しかしそれは私を助けませんでした。 textarea
にはどのようにしてdata-cat
を入手できますか?
'$(この).dataセクション( '猫')' –
freedomn-M @それはあなたのANSのため –