Javascript jQuery-如果选中了多个复选框,则在文本框中添加一个字符串,并为每个复选框添加一个字符串
我有超过25个复选框。到目前为止,当一个项目被选中时,它的值进入一个文本框。我想做的是。。。在第一个复选框被选中后,它是值,然后在下面的文本框中输入。。。所有其他检查的内容都需要在每个检查的值之前添加一个和字符串。我的剧本在下面Javascript jQuery-如果选中了多个复选框,则在文本框中添加一个字符串,并为每个复选框添加一个字符串,javascript,jquery,string,checkbox,textbox,Javascript,Jquery,String,Checkbox,Textbox,我有超过25个复选框。到目前为止,当一个项目被选中时,它的值进入一个文本框。我想做的是。。。在第一个复选框被选中后,它是值,然后在下面的文本框中输入。。。所有其他检查的内容都需要在每个检查的值之前添加一个和字符串。我的剧本在下面 <script> $(document).ready(function(){ var lastChecked; var $checks = $('input:checkbox').cli
<script>
$(document).ready(function(){
var lastChecked;
var $checks = $('input:checkbox').click(function(e) {
var numChecked = $checks.filter(':checked').length;
if (numChecked > 1 ) {
$(":checkbox:checked").each(function(){
var text = $('#text_query');
text.val(' AND' + text.val());
});
}
lastChecked = this;
});
});
</script>
我遇到的问题是,所有的and都出现在所有产品的前面,我收到一个额外的and,来自我在文本框中选中的第一个产品。范例
和产品1产品2产品3
应该是这样的
产品1和产品2以及产品3
那么我错过了什么呢。感谢您的帮助。试试这个
var text = $('#text_query');
text.val(text.val('AND'));
您在处理和追加时有一些不正确的逻辑。看看下面 $document.readyfunction{ var lastChecked; var$checks=$“输入:复选框”。单击函数E{ var numChecked=$checks.filter':checked.length; var text=$'text_query'; text.val; $:复选框:checked.eachfunction{ console.log$this.val; text.val$this.val+'和'+text.val; }; var str=text.val; text.valstr.substring0,str.length-4; lastChecked=这个; }; };
你能分享你的html或小提琴吗?