我正在尝试计算li元素,并addClass分配给另一个div。
例如:
$('.box2').addClass(function(){
return 'list' + $(this).find('.box1 li').length;
});Run Code Online (Sandbox Code Playgroud)
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<ul class="box1">
<li>a</li>
<li>b</li>
<li>c</li>
</ul>
<div class="box2">text</div>Run Code Online (Sandbox Code Playgroud)
这应该是这样的
<div class="box2 list3">text</div>
Run Code Online (Sandbox Code Playgroud)
但是我不知道为什么当我检查DOM代码时,
<div class="box2 list0">text</div>
Run Code Online (Sandbox Code Playgroud)
我得到这个结果。
我需要修改什么代码?请帮忙。
我有一个输入元素,可以在单击按钮时清除值.此输入也可以动态添加或删除输入元素.但是在添加输入元素后,我坚持使用清除按钮不起作用.
这是我到目前为止尝试过的
// ADD , Remove input
var counter = 1,
custom = $('#custom');
$(function() {
$('#add_field').click(function() {
counter += 1;
var newRow = $('<div class="row' + counter + '"><span class="wrap_input"><input id="exception_' + counter + '" name="" type="text"><button class="btn_clear">clear</button><button class="remove-text-box">Remove</button></span></div>');
custom.append(newRow);
(function(index) {
newRow.find('.remove-text-box').click(function() {
custom.find('.row' + index).remove();
});
})(counter);
});
});
// clear input value
$('.wrap_input').each(function() {
var $inp = $(this).find("input"),
$cle = $(this).find(".btn_clear");
$inp.on("input", function(){
$cle.toggle(!!this.value);
});
$cle.on("touchstart click", function(e) {
e.preventDefault();
$inp.val("").trigger("input").focus();
$inp.change();
});
});Run Code Online (Sandbox Code Playgroud)
.btn_clear { …Run Code Online (Sandbox Code Playgroud)