アプリ版:「スタンプのみでお礼する」機能のリリースについて

現在、asp.net(vb)で開発を行っております。
その中でspreadに設定したボタン押下時に、showModalDialogで画面を開き、その画面で設定した値を親画面に渡す処理があるのですが、親画面に戻った後に、スクリプトエラー「実装されていません」となり、処理が正しく機能しません。 

スクリプトには
function test(No,Code)
{
var url="testPopup.aspx?No="+No+"&Code="+Code;
var features = "dialogHeight:330px;dialogWidth:270px;scroll:no";
window.showModalDialog(url,window,features);
return false;
}
と記述しており、これをspreadのボタン押下時に呼び出す形にしております。

通常のボタンで上記の処理を行う場合は問題なく、何故spread内のボタン押下だと、エラーとなるのかが、まったくわからず、頭をなやませております。

どなたか、お力を貸して頂けると助かります。よろしくお願いいたします。

A 回答 (1件)

"spread"って、ひょっとしてspread for .NETのこと言ってます?


この手のWeb用グリッドシステムは、大量のイベントハンドラを持ったJavaScriptライブラリで、ウィンドウまわりのイベントも徹底的にフェッチしています。

しかも、コード拝見すると、JavaScriptのshowModalDialogで値を戻す、という実装ですよね?
おそらく、どっちも特殊でよろしくない方法論のように見受けられます。
そもそも、"showModalDialog"は、JavaScript中でも、ブラウザ依存が非常に強い関数で、spreadオブジェクトからうまく値が渡るかとか、戻り値まできちんと戻るかは、「神のみぞ知る」レベルの話?

spreadはインターフェースの核心部分なのでいまさら改められないと思いますが、showModalDialogの使用はやめ、jQueryUIや関連のJavaScriptダイアログ、MicrosoftのAjax Toolkit Library(オワコン)のModalDialogなどを使い、Ajaxを使って親フォームに値を戻すほうが100倍確実だと思います。

ただ、spreadがなあ。。。うまく受けれるやろか?

参考URL:http://d.hatena.ne.jp/atsukanrock/20100428/12724 …
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!