我有一个名为 EmailTo 的电子邮件地址输入
<input class="long" type="text" id="EmailTo" name="EmailTo" value="<?php echo htmlspecialchars($this->pageVars['EmailTo']); ?>;" />
<div class="checker" id="uniform-contacts"><span><input type="checkbox" id="contacts" class="contacts" value="Dorinel Munteanu <test@test.test>" style="opacity: 0;"></span></div>test test <test@test.ro>
我想要做的是在输入下有一个 list ,当我选中该框时,电子邮件将被添加到输入中。到目前为止一切正常。但是当我尝试提交时,EmailTo 变量为空。如果我手动完成一封电子邮件,一切正常。我认为这可能与 JS 代码有关:
$(".contacts").click(function () {
var options = "";
$(":checkbox").each(function () {
if ($(this).attr('checked') == 'checked' && $(this).attr('class') == 'contacts') {
options += $(this).val() + "; ";
}
});
$("input[name='EmailTo']").val(options);
$("input[name='EmailTo']").attr('value', options);
// disable input
if (options == '') $("input[name='EmailTo']").removeAttr('disabled');
if (options.length > 0) $("input[name='EmailTo']").attr('disabled', 'true');
});
最佳答案
如果禁用输入,则该值不会发送到服务器。这就是为什么没有值发送到服务器的原因。使用隐藏的输入字段或不禁用输入。
关于javascript - Js 没有用 .val 填充输入 - 当我发布表单时,变量为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26017875/