![](/img/trans.png)
[英]Jquery ajax select drop down works in FF and chrome but not IE 7-9
[英]jQuery .submit for autologin works in FF,Chrome… not IE
我有一个内部建议框应用程序,所有用户可以使用相同的用户名和密码..
所以我正在使用jquery表单提交进行自动登录..在FF和Chrome中效果很好,但在IE中..它填充了用户/密码表单字段中的值..进行了提交..然后再次执行一遍又一遍..(该应用程序是WordPress的bbPress)..非常感谢
登录表单:
<input name="user_login" type="text" id="quick_user_login" size="13" maxlength="40" value="USER_NAME_HERE" />
<?php _e( 'Password' ); ?><br />
<input name="password" type="password" id="quick_password" size="13" maxlength="40" tabindex="2" value="PASSWORD_HERE" />
<input name="re" type="hidden" value="<?php echo $re; ?>" />
jQuery的:
<script>
$(document).ready(function(){
jQuery("#loginform").submit();
});
</script>
整个登录表单(股票bbPress代码):
<form class="login" method="post" id="loginform" action="<?php bb_uri( 'bb-login.php', null, BB_URI_CONTEXT_FORM_ACTION + BB_URI_CONTEXT_BB_USER_FORMS ); ?>">
<p>
<?php
printf(
__( '<a href="%1$s">Register</a> or log in - <a href="%2$s">lost password?</a>' ),
bb_get_uri( 'register.php', null, BB_URI_CONTEXT_A_HREF + BB_URI_CONTEXT_BB_USER_FORMS ),
bb_get_uri( 'bb-login.php', null, BB_URI_CONTEXT_FORM_ACTION + BB_URI_CONTEXT_BB_USER_FORMS )
);
?>
</p>
<div>
<label>
<?php _e('Username'); ?><br />
<input name="user_login" type="text" id="quick_user_login" size="13" maxlength="40" value="USER_NAME_HERE" />
</label>
<label>
<?php _e( 'Password' ); ?><br />
<input name="password" type="password" id="quick_password" size="13" maxlength="40" tabindex="2" value="PASSWORD_HERE" />
</label>
<input name="re" type="hidden" value="<?php echo $re; ?>" />
<?php wp_referer_field(); ?>
<input type="submit" name="Submit" class="submit" value="<?php echo esc_attr__( 'Log in »' ); ?>" tabindex="4" />
</div>
<div class="remember">
<label>
<input name="remember" type="checkbox" id="quick_remember" value="1" tabindex="3"<?php echo $remember_checked; ?> />
<?php _e('Remember me'); ?>
</label>
</div>
</form>
尝试这个:
jQuery("#loginform").trigger("submit");
只是一个猜测。
这可能不是理想的解决方案,但它是一个可行的解决方案(至少到目前为止)。 创建一个提交按钮(如果已有的话,可以跳过该按钮)。 附加它,单击它,然后将其删除。 应该可以在IE(和所有其他浏览器)中使用。
$('input').attr('type', 'submit').css('display', 'none')
.appendTo('#loginForm').click().remove();
因此,这是一个具有预填充值的页面,将在页面加载后自动发布。
我的一个大问题:为什么要为此使用JQuery? 可以使用普通的旧javascript很好地完成此功能,而且速度更快(不必加载JQuery即可工作)且更可靠(这是一种非常古老的技术,因此可以在您可以使用的任何浏览器中使用抛出它,当然,只要启用了javascript!)
<form name='loginform'>
.......
</form>
<script>
document.forms['loginform'].submit();
</script>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.