- - PR -
JavaScriptでのWebFormの選択のやりかた
1|2|3
次のページへ»
投稿者 | 投稿内容 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2003-10-01 17:58
初歩的なことだと思うのですが、分からなくて困っております。
よろしくお願いします。 JavaScriptでは window.document.form.element の順に書きます。 例 window.mydocument.myform.mytextbox ここまでは分かっているのですが、この場合にはelementの要素がINPUTでなければelementに書くことができません。 aspのelementを選択する方法を教えていただきたいです。 | ||||||||||||
|
投稿日時: 2003-10-02 00:24
どういったものを選択したいのか分かりませんが、エレメントはコレクションなので
document.form.elements と"s"をつけてやってください。 | ||||||||||||
|
投稿日時: 2003-10-02 09:34
何を行いたいのか、具体的なものが書いておらず申し訳ありません。
やりたいことですが、 asp:TextBoxに入力した値を、検索ボタン押下時にasp:CustomValidatorでチェックをしたいのです。 このときに、JavaScriptにてasp:Textboxに入れた値を取得したいのですが、 InptのTextBoxであれば document.form.elementsで値を取得可能ですが asp:TextBoxではdocument.form.としてもこのあとにelementsの要素が出てこないので、asp:TextBoxのTextの中身の値をJavaScriptで取得する方法を教えて欲しいのです。 | ||||||||||||
|
投稿日時: 2003-10-02 09:54
IntelliSenseも万能ではないので、HTMLに変換される前のソースから全て読み取れるわけではないと思います。 たとえIntelliSenseで出てこなくても、実行時には同じHTMLなのでJavaScript自体は動作すると思います。 document.form.[asp:TextBoxのID].value [ メッセージ編集済み 編集者: ぴで 編集日時 2003-10-02 09:56 ] | ||||||||||||
|
投稿日時: 2003-11-26 21:29
こんばんは。hirasaneです。
横から済みません。
上記ですが、[asp:TextBoxのID]はサーバコントロールでしょうか? HTMLにJavaScriptを記述する際に、サーバコントロール(例えばテキストボックス) の値を取得することは可能でしょうか? どうぞよろしくお願い致します。 | ||||||||||||
|
投稿日時: 2003-11-26 22:23
ぴでさんに代わって。
サーバーコントロールはサーバ上で処理を行った上で HTMLとしてクライアントのブラウザへ出力されます。 よって、値を取得することは可能です。 aspxファイルでサーバコントロールTextBoxのIDを「txtbox1」と設定したとしたら、 ブラウザへ出力されるHTMLは
となるためJavaScriptからは
で取得できるはずです。 | ||||||||||||
|
投稿日時: 2003-11-27 09:05
補足 Webユーザページをかましたり、コンテナコントロールの上に置くと、もう少し複雑になってきます。階層は、"_"か、":"が使われています。 "uu1"というIDのWebユーザページに置いた、"TextBox1"にアクセスするには、 document.form1.uu1_TextBox1 です。name属性が":"で、id属性が"_"かな? | ||||||||||||
|
投稿日時: 2003-11-27 15:04
一休さん、Jittaさん、初心者な質問にも関わらず、丁寧にお答えいただき
ありがとうございます。 助言を元にいろいろやってみたのですが、どうにも上手くいきません。 以下にコードを簡単に記述させていただきます。 開発はWebアプリをASP.NET+VB.NETで行っています。 ---------------------------------------------------- ●JavaScript部分 function CompareTest() { if ((document.Form1.TextBox1.Value != "") && (document.Form1.TextBox2.Value != "")) { if (document.Form1.TextBox1.Value <= document.Form1.TextBox2.Value) alert("OK") else alert("NG") } } ●VB.NET部分 Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load If Not Page.IsPostBack Then Button1.Attributes.Add("OnClick", "CheckTest()") End If End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Server.Transfer("WebForm2.aspx") End Sub ---------------------------------------------------- Button1をクリックすると2つのテキストボックスの値を比較する というものですが、テキストボックスのAutoPostBackは有効にしてます。 2つのテキストボックス(サーバ)の値を比較し、「A < B」ならOK、「A > B」 であればNGという処理をクライアント処理で行いたいのですが・・・ ご教授をどうかよろしくお願い致します。 |
1|2|3
次のページへ»