1

我得到了一个包含几个下拉字段的页面,当我提交该页面时,它返回的数据来自字段下方的 mysql。当用户单击提交按钮时,我想让这个页面位于底部。目前我尝试了以下脚本

function md()
{
//window.location.hash="code";
window.scrollTo(0, document.body.scrollHeight);
}

这适用于 Mozilla,但不适用于 IE。上面的代码还有其他选择吗?我的提交按钮有 onclick 事件,它调用两个 javascript 函数

onClick='selectAllOptions("countryRF");md();return false;'

所以在 IE 中,当我点击它的底部但是当数据再次出现时它又回到顶部?请帮我!。

4

2 回答 2

1

如果您想要这样做,这个 jquery 函数将滚动到页面底部:

$("html, body").animate({ scrollTop: $(document).height() }, "slow");

所以你可以把它扔到函数中:function md() { [the code above] }

一定要加载jquery,把它放在你<head>的页面中:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js" type="text/javascript"></script>

希望这可以帮助 :)

于 2012-08-01T04:39:19.770 回答
1

尝试使用此代码:

<form action="" onsubmit="selectAllOptions('countryRF');setTimeout(md, 1000);return false;">

最好使用按钮onsubmitform不是onclick按钮,因为使用键盘、屏幕阅读器、盲文终端等的人将无法触发click事件。

我添加的代码是setTimeout(md, 1000);,它会在 1 秒后触发该功能md,因为页面可能不会花不到一秒的时间来更新。

编辑:

那可能行不通。

尝试添加name="form"到您的表单,并在head页面的部分中使用它:

<?php
if(isset($_POST['form'])) {
    ?>
<script type="text/javascript">
    window.onload = function() {
        window.scrollTo(0, document.body.scrollHeight);
    };
</script>
<?php
}
?>
于 2012-08-01T06:14:17.623 回答