На странице ASP.Net у меня проблема только с IE.Вот описание.
На странице есть две кнопки и одна метка.Первая кнопка видна и вызывает функцию JS для события click.Эта функция JS вызывает функцию щелчка второй кнопки.Вторая кнопка имеет обработчик события C € для события click.Обработчик событий C # редактирует метку.
В Firefox: метка корректно редактируется после щелчков.В IE (8): метка не редактируется, несмотря на то, что обработчик события C € был правильно обработан.
Кроме того, я заметил, что в IE событие Page_Load вызывается два раза после нажатия кнопки JS: Page_Load button2_OnClick => изменение текста метки Page_Load => Текст метки сбрасывается: (*
В Firefox, Page_Load вызывается только один раз.
Мой вопрос: как сделать IEправильно обновить страницу, как Firefox после нажатия кнопки JS?
Ниже приведен пример тестового кода:
1) Страница ASPX
<head runat="server">
<title></title>
<script type="text/javascript">
function button1Click(sender, args) {
var button2 = document.getElementById("button2");
button2.click();
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Button runat="server" ID="button1" Text="Click-me!" OnClientClick="button1Click();" />
<asp:Button runat="server" ID="button2" Text="Second" OnClick="button2_OnClick" style="display:none" />
<p />
<asp:Label runat="server" ID="label1" Text="Init" />
</div>
</form>
</body>
</html>
2) C # code-сзади:
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void button2_OnClick(object sender, EventArgs e)
{
label1.Text = "Changed";
}
}