我正在以报价单形式预告多个供应商,每个供应商都有一个复选框元素,以便与之联系。供应商在带有类名供应商的div中复选框,而且在选择供应商时,供应商复选框div附加“checkedsupplier”或“uncheckedsupplier”类名。
<div class="supplier-checkbox checkedsupplier">
<input type="hidden" name="supplier-email" class="supplieremail" value="{$item->email}" />
</div> <!--end supplier checkbox-->
foreach供应商div我在div中得到一个隐藏的输入字段,其中包含供应商电子邮件作为其值。想法是,在提交表单时,我会检查所有div的“checkedsupplier”类名,并为每个获取其内部输入的值,将所有值保存在onelong变量中并将其回显到电子邮件的To字段中以进行复制每个供应商的报价单。
使用jquery,我设法切换了类名和一个显示勾选或未勾选的背景效果。
<script>
$(".supplier-checkbox").click(function(){
$(this).toggleClass('checkedsupplier uncheckedsupplier')
//$(this).children( ".supplieremail" ).attr("checked")
});
</script>
任何人都可以给我任何指针,告诉我如何按类名称进行操作,并使用jquery使用该类名获取每个div中每个输入的值。我正在研究它,但是找到了.each用于循环.val用于值和if(bar)用于条件。但我还没有足够的经验把事情放在一起。自从毕业于一个完全不同的领域的网络以来,他已经作为一名初级开发人员工作了7个月。
在app.js文件中的我以这种方式获取表单值: `
v_country:$('#country').val(),
v_quotationtel:$('#quotationtel').val(),
v_mobile:$('#mobile').val(),
v_quotationemail:$('#quotationemail').val(),
v_quotemefor:$('#quotemefor').val(),
v_quotemessage:$('#quotemessage').val()
//this line is what i'm trying to do to get input values and store them in one var to pass them to php form that sends email $( "checksupplier" ).each(function( i ) {
}`
感谢大家!我相信你们在这里,你们在我的学习和工作中都帮助了我。
伊恩
**更新**已修改为按以下方式工作:
<script>
$(function(){
$( ".crew-member-con" ).click(function(){
$(this).toggleClass('whitebg greybg');
$(this).toggleClass('crew-checked crew-unchecked');
$(this).toggleClass('grey white');
if($(this).children('input').prop('checked') == true){
$(this).children('input').prop('checked', false);
}else{
$(this).children('input').prop('checked', true);
}
var selectedMembers='';
$('.selected-members').each(function(){
if($(this).is(':checked')){
selectedMembers +=$(this).val()+', ';
}
//alert(emails);
});
if(selectedMembers != ''){
selectedMembers = selectedMembers.slice(0,-2);
}
$('#exam-member span').html(selectedMembers);
console.log(selectedMembers);
});
});
答案 0 :(得分:1)
这是一个带有一些注释的例子。
$('.myform').submit(function () {
getEmailAddresses();
return false;
}
function getEmailAddresses () {
// a place to hold them
var emails = new Array();
// what will be after 'mailto'
var emailsString = "";
// get 'em
$('.checkedsupplier').each(function () {
// get the hidden email input value
var email = $(this).find('.supplieremail').val();
// check, just in case;
if (email) {
// push the value into our array
emails.push(email);
}
});
//put them all together into a string, split by a semi-colon
emailsString = emails.join(';');
// finally, stuff our mail to link.
// Not sure what you're plan is here but 'emailsString' has all of the values you eed.
$('.mailtolink').attr('href', 'mailto:'+emailsString);
}
答案 1 :(得分:0)
<script>
$(".supplier-checkbox").click(function(){
$(this).toggleClass('checkedsupplier uncheckedsupplier')
//$(this).children( ".supplieremail" ).attr("checked")
var emails='';
$('.supplieremail').each(function(){
emails +=$(this).val();
});
$('#mailfieldstextarea').val(emails);
});
</script>
我希望这会有所帮助。