在自动回复文本框后,避免在asp.net中单击按钮两次

时间:2013-03-15 11:00:51

标签: asp.net button autopostback

在我的一个asp.net项目中,我有两个asp文本框应该在服务器上运行并更新一些值(在aspx.vb中会发生一些计算)。还有一个输入类型的输入按钮(html按钮),点击它可以调用javascript(在.aspx页面中)。

<asp:TextBox ID="TextBox1" runat="server" AutoPostBack=true   Width="38px"></asp:TextBox>

<asp:TextBox ID="TextBox2" runat="server" AutoPostBack=true   Width="33px"></asp:TextBox>

  <input type="button" id="22" value="Draw graph" OnClick="surface.plot1();"   />
  &nbsp;<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>

现在的问题是,如果我在TextBox1TextBox2中输入一些值并直接点击按钮,则第一次不会调用surface.plot1();。所以我需要点击该按钮再次被surface.plot1();解雇。我知道这是因为我已经在TextBox2中输入了值然后直接点击了按钮,所以AutoPostBack在第一次点击按钮时完成,当点击第二次按钮时,实际的函数会被调用吗?。那么如何避免这种情况那么在第一次点击按钮时,surface.plot1();会被调用?或者有没有其他方法来实现这一目标? (但TextBox2 autopost返回应该可以,否则一切都会出错)。

1 个答案:

答案 0 :(得分:0)

如果你可以在surface.plot1()之前的任何时候进行这些计算,那么你可以将按钮更改为服务器端并单击它,在完成计算后,在Click函数中进行计算,从你的代码中调用javascript函数surface.plot1(),如Here所述。 并且记住要删除AutoPostBack =&#34; true&#34;从你的文本框。