按下Enter键后,按钮上的不需要的调用onClick事件

时间:2011-06-18 17:48:48

标签: asp.net button textbox onclick

网络网页我有textBox和按钮。

我添加了onClick for按钮。

问题是如果我单击在textBox中输入它也会调用onClick事件按钮。我理解为什么。

我的代码在这里:

TextBox在视图中:

                      <asp:View ID="BlView" runat="server">
                           <p class="tabHead"> BLACK LIGHT LABEL DATA </p>
                            <table class="tab">
                                <tr>
                                    <td>
                                        <asp:Label ID="Label1" runat="server" class="label" Text="BARCODE" />
                                    </td>
                                    <td>
                                        <asp:TextBox ID="bl_tb_barcode" runat="server" BorderWidth="1px" 
                                            class="textBox"  Width="700"/>
                                    </td>
                                </tr>
                            </table>
                     </asp:View> 

按钮代码在这里:

       <div class="divPrinter">
        <asp:DropDownList runat="server" class="dropDownList" Width="250" Height="35" 
            ID="cbPrinters" style="margin-top:80px"/>
        <asp:Button ID="btnPrint" runat="server" class="btnPrint" style="margin-top:80px"
            Width="120" Height="35"  Text="Print" onclick="BtnPrintClick"  />
        </div>

1 个答案:

答案 0 :(得分:2)

我认为你不希望Enter键产生任何影响?如果是这样,请将此标记添加到文本框中:

onKeyDown = "return (event.keyCode != 13)"

所以它会是这样的:

<asp:TextBox ID="bl_tb_barcode" runat="server" BorderWidth="1px" 
     class="textBox"  Width="700" onKeyDown="return (event.keyCode != 13)"/>

作为旁注,onKeyDown是一个Javascript事件,因此它不会在服务器上执行。代码将返回false,因此不会发生回发。