在IE中多次添加

时间:2009-09-25 06:58:10

标签: .net asp.net

在后端使用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.

3 个答案:

答案 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()?