- - PR -
ASP.Net & JavaScript テキストボックスにデータを入れたい
1|2|3
次のページへ»
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2006-02-02 15:24
初めて投稿します。
ASP.Net(VB.Net)でWebアプリを構築中なのですが、コマンドボタン押下時に サーバー側で動的に JavaScript の confirm メッソドをクライアント側に 書き出しメッセージボックスを表示しています。 メッセージボックスの「はい」、「いいえ」押下による戻り値から判定して クライアントの画面上にあるテキストボックスに値を表示したいのですが、 「はい」または「いいえ」を押下後、何故かテキストボックスに値が全く 書き込まれません。 ----- 以下が上記処理のソースです ----- @ クライアント画面 id="Form1" method="post" autocomplete="off" runat="server" @ クライアント画面上のテキストボックス id="txtHidden" runat="server" @ コマンドボタン押下時のVB.Netコード Dim stbScript As New System.Text.StringBuilder stbScript.Append("<script language=""JavaScript"">" & vbLf) stbScript.Append("{if(confirm('○○処理をします。よろしいですか?') == True)" & vbLf) stbScript.Append("{document.Form1.txtHidden.Value=""0"";}" & vbLf) stbScript.Append("else" & vbLf) stbScript.Append("{document.Form1.txtHidden.Value=""−1"";}" & vbLf) stbScript.Append("}</script>") RegisterStartupScript("OpenNewWindow", stbScript.ToString) @ クライアント側のHTMLソースに記述されるJavaScriptコード <script language="JavaScript"> {if(confirm('○○処理をします。よろしいですか?') == True) {document.Form1.txtHidden.Value="0";} else {document.Form1.txtHidden.Value="-1";} }</script> -------------------------------------- ちなみに動的に JavaScript をHTMLソースに書き出すのは、コマンドボタンを 押下時の画面上の他コントロール入力条件によって txtHidden 内の値を いろいろと変えたいからです。 どなたか良い方法を御存知の方が見えましたら教えてください。 | ||||
|
投稿日時: 2006-02-02 15:30
confirm の 「はい」「いいえ」どちらをクリックしても
値が入らないのでしょうか? JavaScriptのエラーも表示されないのでしょうか? stbScript.Append("{if(confirm('○○処理をします。よろしいですか?') == True)" & vbLf) の True (JavaScriptでは全て小文字の trueなので)が怪しい気が・・・ [ メッセージ編集済み 編集者: Katze 編集日時 2006-02-02 15:40 ] | ||||
|
投稿日時: 2006-02-02 15:47
Katzeさん。返信ありがとうございます。
「True」を「true」にして見ましたが、駄目でした。 ちなみに「はい」、「いいえ」どちらを押しても未だに値は書き込まれません。 またコントロール名、フォーム名にも違いはありません。 | ||||
|
投稿日時: 2006-02-02 16:02
True から true に変えたことで Script エラーが発生しなくなったのは良いとして、
(そもそも、true なんて表記は必要ないのですが) 同じように Value も value なわけです。
_________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||
|
投稿日時: 2006-02-02 16:03
失礼しました。
txtHideden.Value の Value も value と小文字にしてみたら どうでしょうか? #ところでJavaScriptエラーになりませんでした? #Trueだとエラーになると思ってたけど・・・ #書くのが遅いので じゃんぬさんに先越されちゃいましたorz #じゃんぬさんありがとうございます [ メッセージ編集済み 編集者: Katze 編集日時 2006-02-02 16:12 ] | ||||
|
投稿日時: 2006-02-02 16:12
ちなみにブラウザは何ですか?
IE6 だったら インターネットオプション−詳細設定−スクリプトエラーごとに通知を表示する のチェックボックスをオンにして試してください。 クライアントスクリプトはHTMLで試してから ASPで実装するようにしたほうがデバックが楽ですよ | ||||
|
投稿日時: 2006-02-02 16:14
Katzeさん、じゅんねっとさん 返信ありがとうございました。
おっしゃるとおり大文字を小文字に変えたら上手くいきました。 ブラウザーのツールバーなどを表示しないようにしていたので、 それを解除して実行してみると、やはり大文字のままだと JavaScript のエラーが発生していました。 ご協力ありがとうございました。 | ||||
|
投稿日時: 2006-02-02 16:35
余談ですが、Value の方に関してはエラーにならないと思います。(多分) 未定義かどうかを見るためにも alert で怪しいオブジェクトを表示したりすると、 テキスト エディタであってもそれなりにデバッグはできますよ。 # Katze さん、横槍してすいませんでした。(*_ _) _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 |
1|2|3
次のページへ»