有没有人有任何想法为什么下面的回调不执行代码内?我有一个window.onload
脚本(唯一一个)在我的主.html
页面中,由于某种原因,在fadeTo
之后立即被调用。回调函数后意外页面刷新
$("#newentryform").fadeTo("fast", .25, function() {
var newentry = prompt("Please enter a new item:", "");
if ((newentry != null) && (newentry != "")) {
var verify = confirm("Press 'OK' to confirm you wish to create a new entry:" + "\n" + newentry);
if (verify == true) {
processnewentry(newentry, dropid);
}
}
});
上述功能是由在主.HTML
页的onclick
事件调用。
编辑 - 在注释中
请求的代码。这是按钮周围的HTML和的onclick问题。该电话是上述功能的新功能功能 。
<div id="entryinput">
<p>Item<input type="text" id="createitem" readonly /><button id="createitembutton"onClick="showbuttons(this.id)">Select...</button><button id="createnewitembutton" onClick="makenewitem(this.id)">+ New</button><button id="itemReset" onClick="resetbuttons(this.id)">Reset</button>
<input type="text" id="createitemval" style="display:none" readonly/>
<input type="text" id="createitemindex" style="display:none" readonly/>
</p>
</div>
这是processnewentry功能:
功能processnewentry(newentryvalue,dropid) {
if (dropid=="createnewitembutton")
{
dropid="createitem";
}
else
{
dropid="olditem";
}
var createnewItm=document.getElementById(dropid);
createnewItm.value=newitemvalue;
var createnewitemval=document.getElementById(dropid+"val");
createnewitemval.value="";
var createnewitemindex=document.getElementById(dropid+"index");
createnewitemindex.value="1";
$("#newitemform").fadeTo("fast", 1);
var currentPage="newitembuttonpressed";
toggleStatus(currentPage); //disable inputs and buttons in form
var hidebutton=document.getElementById(dropid+"button").style.display="none";
var subdropid=dropid.substr(6);
var hidenewbutton=document.getElementById("createnew"+subdropid+"button").style.display="none";
var displaycreateinput=document.getElementById(dropid).style.display="inline";
}
'processnewentry'的结构需要调试你的问题 – diEcho
提示:写'else {return false; }'with'if(verify){}' – diEcho
对这个问题的回答需要很长的猜测,直到其他相关代码被披露。这包括点击处理程序,与点击处理程序相关的HTML(及其周围)以及processnewentry函数。这里根本没有足够的信息做任何事情,只能猜测。 – jfriend00