1

我的问题是当我单击带有 id="cmdAddATM" 整个 .aspx 页面重新加载的按钮时。即使我没有编写任何与之关联的单击功能。问题是什么?因为这个问题在我的项目中引起了一些与 ajax/jquery 相关的新问题

文件名:AddEditATM.aspx.cs

namespace Monitoring_Tool
{
    public partial class AddEditATM : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            Generix.fillDropDown(ref litRegion, Generix.getData("dbo.Region", "REGION, Code", "", "", "Code", 1));
        }
    }
}

文件:AddEditATM.aspx

<script language="javascript" type="text/javascript">
    $(document).ready(function() {
        showAddEditATMLoad();
    });
</script>
<body>
// I an not writing full syntax here but i have one button with id "cmdAddATM"
</body>

外部 JS 文件:

function showAddEditATMLoad() { 
    //Its Blank
}

我的 HTML 代码:-

<table style="margin: 0px auto; width: 90%" runat="server">
  <thead>
      <tr>
          <th colspan="4" align="center" class="ui-widget-header PageHeader">
              ADD/EDIT ATM
          </th>
      </tr>
  </thead>
  <tbody style="vertical-align: bottom; border-style: solid; border-width: thick;">
      <tr>
          <td style="padding-left: 5px" colspan="2">
              Enter ATM ID &nbsp;<input id="txtEditATM" name="txtEditATM" type="text" />
              &nbsp;&nbsp;
              <button id="cmdEditATM">
                  EDIT ATM</button>
          </td>
          <td align="left" style="font-weight: bold" colspan="1">
              OR
          </td>
          <td align="center" colspan="2">
              <button id="cmdAddATM">
                  ADD ATM</button>
          </td>
      </tr>
  </tbody>
</table>
4

5 回答 5

2

如果您的按钮是一个<asp:Button runat="server" /><input type="submit" />在浏览器上呈现的按钮。因此,它将回发您的页面。

已编辑:添加带有标签的type="button"属性,<button>标签的类型属性<button>具有三个值,并且在您的案例中获得的标签的默认值是提交,这就是提交表单的原因。

1. Submit - For Submitting a Form
2. Reset - For Resetting the Form
3. button - A Simple Button
于 2012-08-29T07:57:37.987 回答
1

将类型属性添加到<button>标签。

<button id="cmdEditATM" type='button'>EDIT ATM</button>

SO线程

  1. 与.. 使用哪个?
  2. 输入类型=“提交”与按钮标签它们可以互换吗?
于 2012-08-29T08:04:34.097 回答
1

如果您使用的是asp:Button对象,则可以使用该OnClientClick属性或仅使用 jQuery 来运行一些客户端代码。您可以false退出 javascript click 事件处理程序(或使用 jQuery 的event.preventDefault()方法)来停止回发。

如果您不希望此按钮发生回发,只需使用普通的 HTML 按钮 ( <input type="button" ... />)。如果您需要在服务器端访问此按钮,只需为其添加 normalrunat="server"属性即可。

请注意,HTML<input type="submit"/>按钮将导致回发,因为它将在页面上提交表单。

于 2012-08-29T08:04:46.233 回答
1

为您的按钮添加type="button"属性。button不同的浏览器可能对元素使用不同的默认类型。

于 2012-08-29T08:04:50.810 回答
0

在 asp.net 中,如果您添加任何 asp 按钮,它会自动将 asp 按钮转换为提交按钮,因此用 HTML 按钮替换 asp 按钮

<input type="button" id='cmdAddATM' value="Button" />
于 2012-08-29T08:01:51.867 回答