Javascript 如何将输入值传递给其他函数
我有表单,带有输入和提交按钮。我想在用户填写电子邮件地址并单击提交按钮时打开弹出窗口。在弹出窗口中,将显示其他按钮,单击该按钮后,应使用输入值从提交按钮执行操作。到目前为止,我有这样的想法:Javascript 如何将输入值传递给其他函数,javascript,jquery,html,Javascript,Jquery,Html,我有表单,带有输入和提交按钮。我想在用户填写电子邮件地址并单击提交按钮时打开弹出窗口。在弹出窗口中,将显示其他按钮,单击该按钮后,应使用输入值从提交按钮执行操作。到目前为止,我有这样的想法: $('form').on('submit', function (e) { e.preventDefault(); //function opening popup goes here... // confirm button in popup $('#confirm_
$('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();
});
});
问题是,我不知道如何将输入值传递到弹出窗口中的确认函数
谢谢你的帮助 您可以将信息存储在变量或变量中,例如:
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中的任何其他地方使用name来从表单中获取单个值,例如html中id属性设置为username的输入元素:
var userName = $('#username').val();
$("#myform").serialize()
或者获取其id属性设置为myform的表单的所有元素:
var userName = $('#username').val();
$("#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访问页面中的值,这是您使用popup或不使用popup访问它的方式。在您的popup函数中,您可以控制台记录以下内容:
$(this)。查找(“#您的#输入”).val()
,查看您是否获得了输入的值。您的html是什么?我看不出为什么你需要用表单提交来包装你的点击按钮,因为你已经在这两个地方都设置了默认值。只需使用这个来获取输入值var val=$(“#input”).val()
我想在用户点击弹出窗口中的按钮时发送表单,他之前填写了值。谢谢,收到了。但是,如何让用户在弹出窗口中单击按钮,然后单击第一个提交按钮,然后使用用户以前填写的值发送表单?@JohnVanh您可以在弹出表单中创建一些隐藏字段,并将来自其他表单的数据存储在其中。这样,弹出式窗体还具有其他值