1

設定した Html ボタンがありますrunat="server"。このボタンをクリックすると、ボタン コードが 2 回実行されることがありますが、それは Chrome ブラウザーで実行している場合のみです。ボタンが更新パネルにあるため、これを期待できることはわかっていますが、Chrome で実行すると、値が常に同じであるため (2 回目の実行でも)、非同期ポストバックを判断できません。

IsPostBack = True
IsCallback = False
ScriptManager.GetCurrent(Me).IsInAsyncPostBack = True
ScriptManager1.IsInAsyncPostBack = True

aspx ページは次のとおりです。

<form id="form1" runat="server">
<div>
    <asp:ScriptManager ID="ScriptManager1" runat="server">
    </asp:ScriptManager>

    <asp:UpdatePanel ID="UpdatePanel1" runat="server">
        <ContentTemplate>  
            <button id="btnHtml1" runat="server" class="toolStripButton"><img src="../Images/ManLate32.png" alt="[Man Late]"/><br />Html Button</button>
            <button id="btnHtml2" runat="server" class="toolStripButton"><img src="../Images/PayCategory32.png" alt="[Pay Category]"/><br />Html Button 2</button>
        </ContentTemplate>
    </asp:UpdatePanel>

</div>
</form>

私のコードビハインド:

Public Class ChromeBug
    Inherits System.Web.UI.Page

    Private Sub btnHtml1_Click(sender As Object, e As System.EventArgs) Handles btnHtml1.ServerClick
        Globals.SubmitCount += 1
        Debug.WriteLine(String.Format("Submit Count:{0} IsPostBack:{1} IsCallBack:{2} IsAsyncPostBack:{3} IsInAsyncPostBack2:{4}", Globals.SubmitCount, IsPostBack, IsCallback, ScriptManager.GetCurrent(Me).IsInAsyncPostBack, ScriptManager1.IsInAsyncPostBack.ToString))
    End Sub

    Private Sub btnHtml2_Click(sender As Object, e As System.EventArgs) Handles btnHtml2.ServerClick
        Globals.SubmitCount += 1
        Debug.WriteLine(String.Format("Submit Count:{0} IsPostBack:{1} IsCallBack:{2} IsAsyncPostBack:{3} IsInAsyncPostBack2:{4}", Globals.SubmitCount, IsPostBack, IsCallback, ScriptManager.GetCurrent(Me).IsInAsyncPostBack, ScriptManager1.IsInAsyncPostBack.ToString))
    End Sub
End Class

Webkit javascript ファイルを追加しようとしましたが、効果がないようです。また、これは空の src 値が原因であると多くの場所で読みましたが、これらはありません。

4

0 に答える 0