我的表单存在问题,其中包含一个标签,每个标签都包含一个表单输入,问题是当我点击“提交”时,它会发布其他非活动标签中的值。
ASPX页面中的代码HTML:
<section class="content-wrapper main-content clear-fix">
<form id="form1" method="post" runat="server">
<input id="Submit" type="submit" onclick="noPostBack('AfficherRapport.aspx')" name="Filtrer" value="Filtrer"/>
<asp:HiddenField ID="position" Value='$("ul.tabs li.active").index()' runat="server"/>
<nav>
<ul runat="server" id="myTab" class="tabs">
<li class="active">
<a href="#tab1">enseign_site</a>
</li>
<li class="">
<a href="#tab2">iwaHadaMakan</a>
</li>
</ul>
</nav>
<!-- Tab panels -->
<div runat="server" id="myRapports" class="tabContainer">
<div id="tab1" class="tabContent" style="display: block;">
<input type="text" name="STAMP1" placeholder="STAMP1"/>
</div>
<div id="tab2" class="tabContent" style="display: none;">
<input type="text" name="STAMP1" placeholder="STAMP1"/>
</div>
</div>
</form>
</section>
代码选项卡Jquery:
$(document).ready(function () {
//hiding tab content except first one
$(".tabContent").not(":first").hide();
// adding Active class to first selected tab and show
$("ul.tabs li:first").addClass("active").show();
// Click event on tab
$("ul.tabs li").click(function () {
// Removing class of Active tab
$("ul.tabs li.active").removeClass("active");
// Adding Active class to Clicked tab
$(this).addClass("active");
// hiding all the tab contents
$(".tabContent").hide();
// showing the clicked tab's content using fading effect
$($('a', this).attr("href")).fadeIn('slow');
return false;
});
});
** /!**:如果你需要一些额外的信息,那么在视图的类behid中完成标签,你只需要它。 非常感谢
答案 0 :(得分:0)
因为你所有的&#34;标签&#34;属于同一个form
元素。提交form
后,其中的所有表单元素都会包含在提交中。请注意,您只有一个form
元素:
<form id="form1" method="post" runat="server">
<!-- other markup -->
<!-- Tab panels -->
<div runat="server" id="myRapports" class="tabContainer">
<div id="tab1" class="tabContent" style="display: block;">
<input type="text" name="STAMP1" placeholder="STAMP1"/>
</div>
<div id="tab2" class="tabContent" style="display: none;">
<input type="text" name="STAMP1" placeholder="STAMP1"/>
</div>
</div>
</form>
如果您需要单独的表单帖子,则需要单独的form
标记。 (在每种情况下可能只有一个&#34; tab&#34;在这种情况下。)每个都有自己的表单元素。否则,使用单个form
标记,您需要在服务器端代码中识别哪些元素相关且哪些元素不相关。
答案 1 :(得分:0)
我假设你使用ASP.NET Web Forms。
要将每个标签分开以执行自己的帖子,您需要多个<form>
标记。
从ASP.NET Web窗体的性质来看,只有一个<form>
标记。所以你要问的只能用AJAX请求来完成。
在此处阅读更多内容:Can we use multiple forms in a web page?
答案 2 :(得分:0)
这对每个人都很敏感。 所有这三个答案都是正确的,只是为了强调在单个页面中我们可以使用runat =&#34; server&#34;我们想要。 谢谢你们所有人。