1

我正在制作 .aspx 文件并使用 jQuery 来执行按键功能。我做了很少<asp:Imagebutton>,所以在 jQuery 部分写了特定的按钮 id。

$(document).keypress(function (e) {
                if (e.which === 13) {
                    $("#ImageSave").click();
                }
            });

我在aspx 按钮 id 之后写了$("#ImageSave") 。但是 html 中的 asp:button id 与我原来的按钮 id 不同。所以我更改了 jQuery 代码 id 部分。$("#ImageSave").click(); $("#MainContent_ImageSave")。但它的点击事件不会被触发。

<asp:ImageButton ID="ImageSave" runat="server" imageurl="img/button_save.jpg"  
       AutoPostBack="True" onclick="ImageSave_Click" />    

html

<input name="ct100$MainContent$ImageSave" id="MainContent_ImageSave" 
     type="image" src="img/button_save.jpg" autopostback="True"></input>   

我认为这个问题是因为在 jQuery 方式中使用 asp id 是错误的。如果你能帮我解决这个问题或者至少指出我正确的方向会很好:)

4

1 回答 1

2

您可以将其用作 id

<%= ImageSave.ClientID %>

所以而不是这个

 $("#ImageSave").click();

利用

 $("#<%= ImageSave.ClientID %>").click();

或者您可以使用ClientIDMode="Static"以便 id 在运行时不会更改。如果您使用的是 asp.net 4.0 及更高版本。

<asp:ImageButton ID="ImageSave" runat="server" imageurl="img/button_save.jpg"  
   AutoPostBack="True" onclick="ImageSave_Click" ClientIDMode="Static" />    
于 2015-02-02T04:22:17.120 回答