【スクリプト】 標準ボタンのクリックイベントでClearメソッドを呼び出すと、ポストバックが行われない
対象製品
SPREAD for ASP.NET 7.0J
状況
修正済み
詳細
標準ボタンのクリックイベントでClearメソッドを呼び出すと、ポストバックが行われません。
【再現コード】
------------------------------------
Webフォームクラス
------------------------------------
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
If Page.IsPostBack Then Return
Button1.OnClientClick = "test();"
End Sub
------------------------------------
クライアント側スクリプト
------------------------------------
function test() {
var spread = document.getElementById("FpSpread1")
spread.Clear();
}
【再現手順】
1.新規WebフォームにSPREADと標準のボタンを配置します
2.再現コードをペーストしプロジェクトを実行します
3.標準のボタンをクリックします
-- ポストバックが発生しません
【再現コード】
------------------------------------
Webフォームクラス
------------------------------------
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
If Page.IsPostBack Then Return
Button1.OnClientClick = "test();"
End Sub
------------------------------------
クライアント側スクリプト
------------------------------------
function test() {
var spread = document.getElementById("FpSpread1")
spread.Clear();
}
【再現手順】
1.新規WebフォームにSPREADと標準のボタンを配置します
2.再現コードをペーストしプロジェクトを実行します
3.標準のボタンをクリックします
-- ポストバックが発生しません
回避方法
Service Pack 3(v7.0.4017.2010)で修正済み。
Service Pack 3(v7.0.4017.2010)より前のバージョンでは次の回避方法が有効です。
------------------------------------------
スクリプトにより明示的にポストバックを実行します。
------------------------------------
クライアント側スクリプト
------------------------------------
function test() {
var spread = document.getElementById("FpSpread1")
spread.Clear();
// 明示的なポストバックの呼び出し
__doPostBack((window.event.target || window.event.srcElement).id, "");
}
Service Pack 3(v7.0.4017.2010)より前のバージョンでは次の回避方法が有効です。
------------------------------------------
スクリプトにより明示的にポストバックを実行します。
------------------------------------
クライアント側スクリプト
------------------------------------
function test() {
var spread = document.getElementById("FpSpread1")
spread.Clear();
// 明示的なポストバックの呼び出し
__doPostBack((window.event.target || window.event.srcElement).id, "");
}