我有一个文本输入,用于保存电子邮件地址,每个地址都由,
分隔,表示php的断点。
<input type="text" name="to" class="form-control">
我没有每次都重新键入每个电子邮件地址,而是提出了一个表格,其中包含我所有的电子邮件地址,并允许我选择要发送电子邮件的地址。
<table class="table">
<thead>
<tr>
<th>
</th>
<th>
Client
</th>
<th>
Email
</th>
</tr>
</thead>
<tbody>
<?php foreach($clients as $client): ?>
<tr>
<td>
<input id="toList" name="to" type="checkbox">
</td>
<td>
<?php echo $client->name.' '.$client->last_name; ?>
</td>
<td>
<?php echo $client->email; ?>
</td>
</tr>
<?php endforeach; ?>
</tbody>
</table>
<a href="#" class="btn btn-primary btn-sm add">Add To Email</a>
现在,我只需要弄清楚一种方法,使用javascript,当点击add
按钮时,javascript会将所有选中的复选框的所有值添加到to
输入字段,将每一个除以,
。
答案 0 :(得分:0)
您好我为您创建了一个jsfiddle ..
代码: -
$(document).ready(function() {
$("#btn").click(function() {
var checkedEmails = $("input[name=to]:checked").closest("tr");
var data = [];
$.each(checkedEmails, function() {
data.push($.trim($(this).find("td:eq(2)").text()));
});
var str = data.join(",");
$("#txt").val(str);
});
});
工作示例: -
http://jsfiddle.net/XUjAH/1102/
谢谢
答案 1 :(得分:0)
将您的复选框更改为
<input id="toList<?php echo $counter; ?>" class="email-check-box" name="to" type="checkbox" value="<?php echo $client->email;?>">
Javascript部分
$(".add").on("click", function() {
$('.email-check-box').each(function () {
var current= (this.checked ? $(this).val() : "");
if(current) {
$(".form-control").val(
$(".form-control").val() + current+ ","
);
}
});
});