我有personal.php
和multipills.php
; <ul class="nav nav-tabs">
<li> <a href="#personal" data-toggle="tab"> personal </a></li>
<li> <a href="#reservation" data-toggle="tab">reservation </a></li>
<li> <a href="#contact" data-toggle="tab"> contact </a></li>
<li> <a href="#family" data-toggle="tab">family </a></li>
</ul>
<div class="tab-pane active" name="personal" id="personal">
<form method="POST" action="personal.php">
<button> SUBMIT </button>
</form>
<div class="tab-pane" name="reservation" id="reservation">
<form method="POST" action="reservation.php">
<button> SUBMIT </button>
</form>
<div class="tab-pane" name="contact" id="contact">
<div class="tab-pane " name="family" id="family">
有4个标签
personal.php
当我在multipills.php#reservation
的帮助下提交表单PERSONAL TAB时,每个标签都包含表单,它应该将我重定向到windows.location.href
。
两个页面上都没有javascript或jquery。
如果需要,我应该把脚本放在哪里?
插入数据后,windows.locatin.hash
或<form class="signup-Form" action="includes/signup.inc.php" method="post">
<div class="first-input">
<input id="first-input" type="text" name="first" placeholder="First Name">
</div>
<div class="last-input">
<input id="last-input" type="text" name="last" value="" placeholder="Last Name">
</div>
<div class="email-input">
<input id="email-input" type="text" name="email" value="" placeholder="E-mail">
</div>
<div class="college-input">
<input id="college-input" type="text" name="college" value="" placeholder="College Name">
</div>
<div class="password-input">
<input id="password-input" type="password" name="password" value="" placeholder="Password">
</div>
<p class="form-message"></p>
<div class="signup-btn">
<button id="signup-btn" type="submit" name="button">sign-up</button>
</div>
</form>
<script>
$(document).ready(function () {
$('.signup-Form').submit(function(event){
event.preventDefault();
var first=$("#first-input").val();
var last=$("#last-input").val();
var email=$("#email-input").val();
var college=$("#college-input").val();
var password=$("#password-input").val();
var submit=$("#signup-btn").val();
$(".form-message").load("includes/signup.inc.php", {
first:first,
last:last,
email:email,
college:college,
password:password,
submit:submit
})
});
});
</script>
无效。
提前谢谢。
答案 0 :(得分:0)
有两种方法可以解决这个问题。
1)激活标签服务器端
您需要一种方法让服务器知道您想要激活哪个窗格。可能在每个窗格的PHP文件中都有一个隐藏的输入。
例如,personal.php可能看起来像这样:
<form action="multipills.php" method="post">
<!-- stuff -->
<input type="hidden" name="pane" value="personal">
</form>
然后multipills.php应该有逻辑来确定
我们应该展示的下一个窗格是什么?
一旦知道要显示的窗格,就可以在每个active
上切换tab-pane
类以激活相应的窗格。
<div class="tab-pane<?= $currentPane == "personal" ? " active" : ""; ?>" name="reservation" id="reservation">
<!-- Repeat for other tabs. -->
2)激活标签客户端
您可以使用JavaScript完成类似的操作。
personal.php应该是这样的:
<form action="multipills.php#reservation" method="post">
<!-- stuff -->
</form>
默认情况下,这些窗格都不会处于活动状态。
然后,在标记中定义标签后,您将在页面的某处添加脚本。
<script>
document.getElementById(window.location.hash).classList.add('active');
</script>
这两种解决方案既不完整也不一定是理想的,但希望它们能帮助你开始正确的道路。