【ラジオボタンリスト型セル】クライアント側スクリプト(SetValue)で値を設定すると、シートがスクロールされる
対象製品
SPREAD for .NET 2.5J Web Forms Edition
発生環境
動作保証環境と同様
状況
修正済み
詳細
クライアント側スクリプト(SetValue メソッド)でラジオボタンリスト型セルに値を設定すると、シートがスクロールされる場合があります。
【再現手順】
1.新規WebフォームにSPREADとbuttonを配置し、下記のサンプルコードをコピーします
2.アプリケーションを実行します
3.buttonを押下します
4.20行目が表示されるように、シートがスクロールします
【サンプルコード】
-------------------------
Webフォームクラス
-------------------------
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If Page.IsPostBack Then
Return
End If
FpSpread1.ActiveSheetView.RowCount = 50
FpSpread1.ActiveSheetView.PageSize = 50
Dim rc As New FarPoint.Web.Spread.RadioButtonListCellType(New String() {"赤", "白"}, New String() {"0", "1"})
FpSpread1.ActiveSheetView.Columns(1).CellType = rc
End Sub
-------------------------
クライアント側スクリプト
-------------------------
<script type="text/javascript">
function test()
{
var spread = document.getElementById("FpSpread1");
spread.SetValue(19,1,"赤",true);
}
</script>
-------------------------
HTML
-------------------------
<input id="Button2" style="z-index: 103; left: 86px; width: 79px; position: absolute;
top: 4px" type="button" value="button" onclick="test();" />
【再現手順】
1.新規WebフォームにSPREADとbuttonを配置し、下記のサンプルコードをコピーします
2.アプリケーションを実行します
3.buttonを押下します
4.20行目が表示されるように、シートがスクロールします
【サンプルコード】
-------------------------
Webフォームクラス
-------------------------
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If Page.IsPostBack Then
Return
End If
FpSpread1.ActiveSheetView.RowCount = 50
FpSpread1.ActiveSheetView.PageSize = 50
Dim rc As New FarPoint.Web.Spread.RadioButtonListCellType(New String() {"赤", "白"}, New String() {"0", "1"})
FpSpread1.ActiveSheetView.Columns(1).CellType = rc
End Sub
-------------------------
クライアント側スクリプト
-------------------------
<script type="text/javascript">
function test()
{
var spread = document.getElementById("FpSpread1");
spread.SetValue(19,1,"赤",true);
}
</script>
-------------------------
HTML
-------------------------
<input id="Button2" style="z-index: 103; left: 86px; width: 79px; position: absolute;
top: 4px" type="button" value="button" onclick="test();" />
回避方法
2008/03/31版で修正済み。
2008/03/31版より前のバージョンでは次の回避方法が有効です。
以下のようなDHTMLの機能を用いてラジオボタンに値を設定してください。
<script type="text/javascript">
function test()
{
var spread = document.getElementById("FpSpread1");
var rl = document.getElementsByName("FpSpread1$" + "19,1");
rl[0].checked = true;
}
</script>
2008/03/31版より前のバージョンでは次の回避方法が有効です。
以下のようなDHTMLの機能を用いてラジオボタンに値を設定してください。
<script type="text/javascript">
function test()
{
var spread = document.getElementById("FpSpread1");
var rl = document.getElementsByName("FpSpread1$" + "19,1");
rl[0].checked = true;
}
</script>
キーワード
SPRN06607
この文書は、以前は次のバグレポートIDで公開されていました : 7407