ASP.NET часто меняет идентификатор серверного элемента управления, поэтому жесткое кодирование идентификатора элемента управления в вашем Javascript не является идеальным. При приведении к мастер-страницам ASP.NET добавляет идентификатор к идентификатору ContentPlaceholder на главной странице (т.е. MainContent_btnSave
).
Что вы можете сделать, это использовать код сервера, встроенный в javascript: <%=btnSave.ClientId%>
вместо btnSave
.
Если Javascript находится в файле .ASPX:
$("#<%=btnSave.ClientId%>").click(function() {
/* ... */
}
Если JS находится в отдельном файле, просто объявите кнопку как переменную и вызовите переменную в своем коде JS.
.aspx:
var btnSave = $("#<%=btnSave.ClientId%>");
.JS:
$(btnSave).click(function() {
/* ... */
}
Кстати, если вы используете C #, вам, возможно, придется использовать <%=btnSave.ClientId()%>
вместо <%=btnSave.ClientId%>
VB *.