Javascript 如何停止向上滚动<;按钮dojoType=";dijit.表单按钮“;类型=";提交/&燃气轮机;在IE11中
我目前在一个客户端有dojo的web应用程序中工作。现在对于浏览器IE11我面临以下组件的滚动问题Javascript 如何停止向上滚动<;按钮dojoType=";dijit.表单按钮“;类型=";提交/&燃气轮机;在IE11中,javascript,jquery,dojo,Javascript,Jquery,Dojo,我目前在一个客户端有dojo的web应用程序中工作。现在对于浏览器IE11我面临以下组件的滚动问题 <button dojoType="dijit.form.Button" type="submit" name="favouriteList" value="favoriteList" onclick="buttonfix(this);"/> 下面是buttonfix(此)功能的代码: <script type="text/javascript">
<button dojoType="dijit.form.Button" type="submit" name="favouriteList" value="favoriteList" onclick="buttonfix(this);"/>
下面是buttonfix(此)功能的代码:
<script type="text/javascript">
function buttonfix(dojoButton) {
var button;
if(dojoButton.id==""){
button = dojoButton;
} else {
button=document.getElementById(dojoButton.id)
}
for(j=0; j<button.form.elements.length; j++)
if(button.form.elements[j].tagName == 'BUTTON' )
button.form.elements[j].disabled = true;
button.disabled=false;
}
</script>
函数按钮nfix(dojoButton){
var按钮;
if(dojoButton.id==“”){
按钮=dojoButton;
}否则{
button=document.getElementById(dojoButton.id)
}
对于(j=0;j我可能误解了这个问题,但是
向上滚动可能是因为表单已发布,触发页面重新加载。也许您可以尝试将onclick更改为:
onclick=“buttonfix(此);返回false”
这将阻止提交。在dojo按钮的属性中设置scrollOnFocus:false-否。我不能这样做。正如我在帖子中提到的,操作没有触发,即表单没有在第一次提交。我需要回发。问题是,第一次单击表单时,表单没有回发帖子,而页面正在向上滚动顶部。啊,好的。buttonfix函数中发生了什么?如果您删除它,它会工作吗?我已经尝试删除buttonfix,但问题仍然存在。请尝试将type=“submit”
更改为type=“button”
。是否要提交表单或onclick事件以触发?如果您可以提供生成的整个HTML,则会更好。是的,我想提交表单onclick。它不会在第一次单击时出现在IE11中,而是页面会向上滚动。因为我想提交页面,所以我猜type=“submit”是合适的。解释一下你想做什么。你是说你想提交表单,好吧,但是为什么要调用buttonfix()
函数,这显然没有用,因为表单提交会触发页面加载。无论如何,滚动到顶部表示页面可能被重新加载,因为表单是提交的(就像Ted Nyberg在回答中提到的)。此外,据我所知,Dojo 2.1并不存在。
<script type="text/javascript">
function buttonfix(dojoButton) {
var button;
if(dojoButton.id==""){
button = dojoButton;
} else {
button=document.getElementById(dojoButton.id)
}
for(j=0; j<button.form.elements.length; j++)
if(button.form.elements[j].tagName == 'BUTTON' )
button.form.elements[j].disabled = true;
button.disabled=false;
}
</script>