我正在使用JavaScript來啓動一個「shadowbox」jquery lightbox窗口,當用戶登錄並在html表單上提交時。javascript:防止在瀏覽器中打開第二個_blank窗口?
首先,我希望jquery窗口只能在succesfull提交時啓動,而不能在不成功的提交中啓動。 (即如果用戶的電子郵件和密碼是正確的) - 是否有辦法做到這一點?
遇到的另一個問題IM是目前的預期,但第2個目標_blank窗口同時打開,因爲我使用'this.target = 'formpopup';'
我曾試圖用'e.preventDefault();'
防止jquery的窗口彈出第二個窗口從開放,這確實停止打開2窗口,但它也停止從用戶登錄窗體。有反正我可以防止第二個窗口在一個新的_blank窗口中打開,而無需刪除這個'this.target = 'formpopup';'
這個是jquery窗口打開所必需的。
請有人指示我該怎麼做,謝謝。
HTML表單:
<form id="myform" form action="login.php" method="post" class="loginform">
Email
<input type="text" name="email" maxlength="30" />
Password
<input type="password" name="password" maxlength="30" />
<input type="image" src="../PTB1/assets/img/icons/loginarrow1.png" name="submit" class="loginbutton" value="Login" />
</form>
JAVASCRIPT:
<script>
$(document).ready(function() {
$('#myform').submit(function() {
Shadowbox.open({
content: '<iframe src="loginin.php" width="500" height="300" scrolling="no" style="overflow:hidden; border:none;"></iframe>',
player: "html",
height: 300,
width: 500
});
this.target = 'formpopup';
e.preventDefault();
});
});
</script>
爲什麼你需要'this.target ='formpopup';'?另外,你的'e.preventDefault()'行會導致錯誤,因爲沒有'e'。檢查你的錯誤控制檯。 – bfavaretto