【发布时间】:2023-01-24 05:09:43
【问题描述】:
所以我正在尝试构建一个包含两个选项卡的多步骤表单,选项卡有一个用户名,而选项卡二有密码,在页面加载时,选项卡一是可见的,如果我单击下一步按钮,我将隐藏选项卡 1 并显示选项卡 2使用 jquery,但是当显示第二个选项卡时,我发现很难转换下一个按钮提交按钮以使我能够提交表单。
试过这个
$(function () {
$('.tab1').show();
$('#cracc').show();
$('#nextBtn').on('click', () => {
/* $('#nextBtn').html('Submit'); */
$('.tab1').hide();
$('#cracc').hide();
$('.tab2').show(() => {
$('.forgotPass').show();
$('#nextBtn').html('Submit')
})
})
if (('.tab2').show()) {
$('#nextBtn').attr('type', 'submit')
$('#nextBtn').on('click', () => {
$('form').submit(() => {
alert('submitted')
})
})
}
})
【问题讨论】:
-
执行与选项卡相同的操作 - 渲染/包含两个按钮,然后根据需要显示/隐藏您想要的按钮。根据您的 HTML,您可以通过 css 自动显示按钮/显示,而无需 JS。
-
或者,在
$('#nextBtn').on('click',中检查您所在的选项卡 -
我建议反对改变属性。它可能会工作,但它最终会处于错误状态的风险似乎太大(例如,如果你添加一个后退/重置按钮然后不添加重置代码 - 尽管可以说同样的非 css (js) 隐藏/显示解决方案)
-
我同意那个。更好的方法是使用两个不同的按钮并改变它们的可见性。
-
是的,我可以使用另一个按钮,显示/隐藏可见性,但我相信我应该可以在两个属性之间切换时使用一个元素,即在 tab1 上,按钮应该在下一个,在 tab2 上应该是一个提交按钮,它确实有效。
标签: jquery forms button bootstrap-5