我嘗試計算每個按鈕中的每個值

PHP 代碼
<?php for($i = 0; $i < 5; $i ){?>
<a class="btn btn-primary btn-count" data-id="<?php echo($i)?>" id="click[<?php echo($i)?>]">
Click Me <h7 id="count[<?php echo($i)?>]">(0)</h7>
</a>
<?php }?>
jQuery
$(document).ready(function() {
var i = 0;
$(".btn-count").click(function(){
i ;
var id = $(this).data('id');
$("#count[" id "]").text(i);
});
}
但它根本沒有用。誰能告訴我這段代碼哪里出錯了?
uj5u.com熱心網友回復:
您不需要為此使用 id,您可以使用.find()根據您的 html 查找子項。
然后從您的元素中獲取“計數”值并將其加 1。
$(document).ready(function() {
$(".btn-count").click(function() {
$(this).find("h6").text(function(i, n) {
var count = n.match(/\(([^)] )\)/)[1];
return `(${count 1})`
});
});
})
演示
顯示代碼片段
$(document).ready(function() {
$(".btn-count").click(function() {
$(this).find("h6").text(function(i, n) {
var count = n.match(/\(([^)] )\)/)[1];
return `(${count 1})`
});
});
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<a class="btn btn-primary btn-count" data-id="<?php echo($i)?>" id="click[<?php echo($i)?>]">
Click Me <h6 id="count[<?php echo($i)?>]">(0)</h6>
</a>
<a class="btn btn-primary btn-count" data-id="<?php echo($i)?>" id="click[<?php echo($i)?>]">
Click Me <h6 id="count[<?php echo($i)?>]">(0)</h6>
</a>
擁有一個全域計數器的問題var i = 0;并不代表您單擊的按鈕,而是所有這些按鈕。
uj5u.com熱心網友回復:
您的代碼可以簡單地修改為此
<button class="btn btn-primary btn-count" data-id="1" id="click1">
Click Me <h7 id="count1">(0)</h7>
</button>
<button class="btn btn-primary btn-count" data-id="2" id="click2">
Click Me <h7 id="count2">(0)</h7>
</button>
$(document).ready(function() {
$(".btn-count").click(function(){
var id = $(this).data('id');
var value = $(this).data('value');
value
$(this).data('value', value);
console.log(id)
console.log( $("#count" id))
$("#count" id).text(value);
});
})
這里也是代碼的演示
https://codepen.io/BubuKiki/pen/YzegWMg
問題出在特殊字符上,似乎找不到它們。希望這可以幫助。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/491821.html
標籤:javascript php jQuery
上一篇:用前一個值減去值
下一篇:如何知道兩個陣列之間的位置差異
