在后端使用C#.net的asp.net中,点击Add后我使用Javascript添加股票并关闭窗口(我使用window.open打开)。虽然这在其他浏览器中运行良好,[在MSIE中]如果我一直点击“添加”按钮,它会添加多个股票条目。这真是奇怪的行为。关于如何克服这一点的任何想法。
AddStock(sessionID, stock,perms);
string script = "window.parent.closeIFrame();";
ClientScript.RegisterStartupScript(this.GetType(), "close", script, true);
closeIFrame() is defined on the parent page.
答案 0 :(得分:1)
我找到了解决方法,我们可以点击this is the link to a beautiful article for this
停用按钮答案 1 :(得分:0)
如果您的意思是在彼此之后立即单击添加几次,则必须进行服务器端验证以确保不会多次调用“AddStock”。这是默认行为,因为您可以对后端执行多个POST,并且在执行另一个请求时不会被请求杀死。
编辑你可能想要这样的东西,
if(((TimeSpan)(DateTime.Now - (Session["LastAddedStock"] ?? DateTime.Min)).TotalSeconds < 15)
//don't proceed, as the last addStock was less than 15 secs. ago
else
//Do Add Stock
Session["LastAddedStock"] = DateTime.Now;
答案 2 :(得分:0)
我可以看到AddStock(...)程序是子表单。那么,为什么你需要调用父函数来关闭子表单,当你可以在同一子表单中调用javascript时:close()?