我正在使用Bootstrap Framework创建一个新站点,并且在n秒后尝试自动关闭引导带警报时出现问题。
主页面包含模态登录表单。一旦用户尝试登录,提供输入的详细信息不正确,我会在主页面上显示包含错误的警报(密码错误,用户名未知等)。
所以警报显示正常,但我无法自动关闭它,如果有人能够提供帮助,请在下方编码,谢谢。
PHP(返回错误并显示警告)
- (BOOL) textFieldShouldReturn:(UITextField *)textField{
if(textField == self.txtUserName){
[self.txtEmail becomeFirstResponder];
}
else if (textField == self.txtEmail){
[self.txtPassword becomeFirstResponder];
}
else if (textField == self.txtPassword){
[self.txtConfirmPassword becomeFirstResponder];
}
else if (textField == self.txtConfirmPassword){
[self.txtFirstName becomeFirstResponder];
}
else{
[textField resignFirstResponder];
}
return YES;
}
- (void)textFieldDidEndEditing:(UITextField *)textField
{
[textField resignFirstResponder];
[textField layoutIfNeeded];
}
我尝试从上面的PHP代码调用java脚本函数,然后关闭警报,没有运气
<?php
// show potential errors / feedback (from login object)
if (isset($login)) {
if ($login->errors) {
foreach ($login->errors as $error) {
$AlertError = $error;
echo '<div class="alert alert-warning alert-dismissible" role="alert" id="loginerror">
<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>
<strong>' . $AlertError . '</strong>
</div>';
}
}
}
答案 0 :(得分:1)
你必须有setTimeout()
之类的延迟,然后点击关闭按钮上的.click()
:
if($('#loginerror').length){ // <-----checks if loginerror div is available
setTimeout(function(){
$('#loginerror').find('.close')[0].click();
},1*1000);
}