如何通过JavaScript发送request.POST中的当前表单选项卡
我有一个表单,表单中有一系列对象,每个对象都有一个选项卡。例如: 对象1:表1 对象2:表2 对象3:表3 代码示例:如何通过JavaScript发送request.POST中的当前表单选项卡,javascript,jquery,django,Javascript,Jquery,Django,我有一个表单,表单中有一系列对象,每个对象都有一个选项卡。例如: 对象1:表1 对象2:表2 对象3:表3 代码示例: <ul class="nav nav-pills" id="evidence-formset-tab" role="tablist"> <li class="nav-item"> <a class="nav-link active" id
<ul class="nav nav-pills" id="evidence-formset-tab" role="tablist">
<li class="nav-item">
<a class="nav-link active" id="evidence-form-1-tab" data-toggle="pill" href="#evidence-form-1" role="tab" aria-controls="evidence-form-1" aria-selected="true">1</a>
</li>
<li class="nav-item">
<a class="nav-link" id="evidence-form-2-tab" data-toggle="pill" href="#evidence-form-2" role="tab" aria-controls="evidence-form-2" aria-selected="false">2</a>
</li>
</ul>
是否有方法注入当前选项卡的值,然后在后端的request.POST中处理它?我假设您正在使用。如果这是正确的,您应该首先提到它,并标记您的qeustion
您可以在您的应用程序中的某个位置添加标记。然后添加一个事件侦听器,每当用户更改选项卡时,该侦听器都会更新此隐藏输入的值:
$'a[data toggle=pill]'。在'show.bs.tab'上,e=>{
$'activetab'.vale.target.href.replace/^/;
}
例如,如果用户单击选项卡1,则会将输入值设置为证据-form-1。然后,当用户提交表单时,浏览器将把隐藏输入的值作为activetab=execution-form-1发送到服务器,该值可以从Django读取
请注意,只有用户至少切换一次选项卡,输入才会有值。如果用户在提交表单之前没有单击任何选项卡,则可能会出现问题。我将留给您来解决如何处理这种情况。我假设您正在使用。如果这是正确的,您应该首先提到它,并标记您的qeustion
您可以在您的应用程序中的某个位置添加标记。然后添加一个事件侦听器,每当用户更改选项卡时,该侦听器都会更新此隐藏输入的值:
$'a[data toggle=pill]'。在'show.bs.tab'上,e=>{
$'activetab'.vale.target.href.replace/^/;
}
例如,如果用户单击选项卡1,则会将输入值设置为证据-form-1。然后,当用户提交表单时,浏览器将把隐藏输入的值作为activetab=execution-form-1发送到服务器,该值可以从Django读取
请注意,只有用户至少切换一次选项卡,输入才会有值。如果用户在提交表单之前没有单击任何选项卡,则可能会出现问题。我将留给您来解决如何处理这种情况。您可以使用$.nav-item.active a.text来获取活动选项卡的值,然后将该值放入输入标记中,并将其附加到表单中,以便也可以提交该值
演示代码:
函数验证注册器{
违约事件;
console.log$.nav-item.active a.text
//获取活动文本的类并在表单中追加。。
$'DEVICE-formset'。追加
$'evidence-formset'.attr'action',{%url'解释'%}.submit;
}
家
菜单1
点击我
您可以使用$.nav-item.active a.text获取活动选项卡的值,然后将该值放入输入标记中,并将其附加到表单中,以便也可以提交该值
演示代码:
函数验证注册器{
违约事件;
console.log$.nav-item.active a.text
//获取活动文本的类并在表单中追加。。
$'DEVICE-formset'。追加
$'evidence-formset'.attr'action',{%url'解释'%}.submit;
}
家
菜单1
点击我
您需要根据所选选项卡获取1或2?正是如此,这就是我尝试获取的。您需要根据所选选项卡获取1或2?正是如此,这就是我尝试获取的。感谢您的回答,看起来不错,出于某种原因,在我的终端控制台上。log$.nav-item.active a.text没有任何值。它总是空的。这没有任何意义。您使用的Bootstrap是哪个版本?当前我使用的是Bootstrap 4该版本将活动类添加到标记中,因此使用$.nav-link.active.text我不知道如何使用,,但当您说值未显示时,我首先想到:。谢谢您的回答,看起来不错,出于某种原因,在我这方面,console.log$.nav-item.active a.text没有任何值。它总是空的。这没有任何意义。您使用的Bootstrap是哪个版本?当前我使用的是Bootstrap 4该版本将活动类添加到标记中,因此使用$.nav-link.active.text我不确定如何使用,,但当您说值未显示时,我首先想到的是:。
function validateRegister() {
event.preventDefault();
$('#evidence-formset').attr('action', "{% url 'interpretation' %}").submit();
}