我有表格和输入和提交按钮。我想在用户填写电子邮件地址并单击提交按钮时打开弹出窗口。在弹出窗口中,将单击其他按钮,该按钮应使用输入值从提交按钮进行操作。到目前为止,我有这样的事情:
$('form').on('submit', function (e) {
e.preventDefault();
//function opening popup goes here...
// confirm button in popup
$('#confirm_button').on('click', (e) => {
e.preventDefault();
$(this).unbind('submit').submit();
});
});
问题是我不知道如何将输入中的值传递给弹出窗口中的确认函数。
感谢您的帮助!
答案 0 :(得分:0)
您可以将信息存储在变量或多变量中,例如:
var name;
$('form').on('submit', function (e) {
e.preventDefault();
// Get name from input and store it in the name variable.
name = $('#name').val();
//function opening popup goes here...
// confirm button in popup
$('#confirm_button').on('click', (e) => {
e.preventDefault();
$(this).unbind('submit').submit();
});
});
然后您可以在JS中的其他任何地方使用名称
答案 1 :(得分:0)
要从表单中获取单个值,请以id属性设置为 username 的html中的输入元素为例:
var userName = $('#username').val();
或获取其id属性设置为 myform 的表单的所有元素:
$("#myform").serialize()
要将输入值传递给其他函数,必须首先创建一个函数:
function doSomething(first) {
if (first) {
console.log(first);
alert(first);
}
}
$('form').on('submit', function (e) {
e.preventDefault();
//function opening popup goes here...
});
// confirm button in popup
$('#confirm_button').on('click', (e) => {
e.preventDefault();
var userName = $('#username').val();
$(this).unbind('submit').submit();
doSomething(userName);
});
请注意,这里的重要部分是使用#id访问您页面中的值,这是您是否通过弹出窗口访问它的方式。