いつもお世話になります。

開発環境:asp.net(VB)

WebフォームにWebユーザーコントロールを貼り付けしています。
Webユーザーコントロールにはラジオボタンが4つあります。
ラジオボタンの選択によって、ラベルに入る文字が変わるようにしたいです。

javascriptで製造したいと思っていますが、(1)の「document.userfotm1.elements["lbl" + i].value = "test1";」で、
「Microsoft JScript 実行時エラー:' document.userfotm1.elementsは Null またはオブジェクトではありません。」と表示されてしまいます。
どなたかご教示いただけますでしょうか。

(1)javascript
※ 「userfotm1」…Webユーザーコントロール全体選択したときのプロパティ値「ID名」を入力しています。(form名を入れるのが正しいようですが、Webユーザーコントロールではどれににあてはまるのか分かりません・・・。)

function ChangeLabel(obj) {
var maxCnt = 4;
if (obj.id == "RadioButton1") {
for (i = 1; i <= maxCnt; i++) {
document.userfotm1.elements["lbl" + i].value = "test1";
}
} else {
for (i = 1; i <= maxCnt; i++) {
document.userfotm1.elements["lbl"+ i].value = "test2";
}
}
}


(2)定義 以下を4つ定義しています
<asp:TableCell CssClass="TdData"><asp:Label ID="lbl1" runat="server" 
Text="TESTA"></asp:Label></asp:TableCell>
<asp:TableCell CssClass="TdData"><asp:Label ID="lbl2" runat="server" 
Text="TESTB"></asp:Label></asp:TableCell>
<asp:TableCell CssClass="TdData"><asp:Label ID="lbl3" runat="server" 
Text="TESTC"></asp:Label></asp:TableCell>
<asp:TableCell CssClass="TdData"><asp:Label ID="lbl4" runat="server" 
Text="TESTD"></asp:Label></asp:TableCell>



(3)Webユーザーコントロール
.RadioButton1.Attributes.Add("onclick", "ChangeLabel(this)")
.RadioButton2.Attributes.Add("onclick", "ChangeLabel(this)")
.RadioButton3.Attributes.Add("onclick", "ChangeLabel(this)")
.RadioButton4.Attributes.Add("onclick", "ChangeLabel(this)")

よろしくおねがいします。

このQ&Aに関連する最新のQ&A

A 回答 (1件)

getElementById(id)



idはクライアントサイドのIDを指定する
    • good
    • 0
この回答へのお礼

ありがとうございます。
IDで解決しました。

お礼日時:2011/04/15 11:53

このQ&Aに関連する人気のQ&A

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

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qラジオボタンのリセット方法

現在フレームをつかって二分割しているんですが(A,Bとする)
Bにラジオボタン選択画面にして
ラジオボタンを選択してOKを押すと
その処理をAで行い
新しい画面をAに出すと
しています。
その際ラジオボタンを前に選択したものが
残ってしまい
リセットしたいのですがどうしたらよいですか?

Aベストアンサー

該当フレームの該当フォームのreset()を呼び出します。

QASPとASP.NETとASP.NET2.0の違い

Web開発初心者です。

帳票をPDF表示するWebアプリケーションを開発することになり、
言語はASPを使用することになりました。

そこで
ASP
ASP.NET
ASP.NET2.0
の違いをご存知の方がいらっしゃいましたら教えていただけますでしょうか。
それぞれIIS以外に必要な実行環境、ツール等も教えていただけると助かります。

不明瞭な箇所がありましたら説明させていただきます。
すいませんがよろしくお願いします。

Aベストアンサー

ASP用のツールは、多分、無いですね・・・
#メモ帳でASPファイルを作成してサーバにコピーとか。

ASP.NET用の開発ツールは、Microsft社製の「VisualStudio」シリーズがあり、
ASP.NET(1.1)は、「VislaStudio 2003」で、
ASP.NET2.0は、「VislaStudio 2005」で開発できます。


「Visual Web Developer 2005 Express Edition 」は、
「Visual Studio 2005」のEditionの1つで、有料のパッケージ版(入門者つき)と無料のダウンロード版があります。
機能的には同じで、無料版だからといって、商用利用の制限等はありません。

(http://www.microsoft.com/japan/msdn/vstudio/express/faq/default.aspx)

「Express Edition を商用目的で使用することはできますか。」

また、「ASP.NET1.1用」の無料の開発ツールとして、3rdパーティ製ですが、
「Web Matrix 」と言うのがあります。

「ASP.NET Web Matrix Project 日本語版」
(http://www.microsoft.com/japan/msdn/asp.net/webmatrix/)

ASP用のツールは、多分、無いですね・・・
#メモ帳でASPファイルを作成してサーバにコピーとか。

ASP.NET用の開発ツールは、Microsft社製の「VisualStudio」シリーズがあり、
ASP.NET(1.1)は、「VislaStudio 2003」で、
ASP.NET2.0は、「VislaStudio 2005」で開発できます。


「Visual Web Developer 2005 Express Edition 」は、
「Visual Studio 2005」のEditionの1つで、有料のパッケージ版(入門者つき)と無料のダウンロード版があります。
機能的には同じで、無料版だからといって、商用利用...続きを読む

QExcel ラジオボタンのリセットを作りたい

http://www3.plala.or.jp/hkyoji/javascript/javano6.htm
上記サイトのようなラジオボタンをEXCELで作りましたが、
リセットするボタンの作り方がわかりません。
調べてもWebでのことしかでてきません。
ご教授よろしくお願いします。

Aベストアンサー

こんばんは。

通常では、ラジオボタン(Excelでは、オプションボタン)のリセットはしません。それは、必ず、ひとつが必ず「オン」 になるようになっているからです。あえて作るなら以下のようになります。


Private Sub CommandButton1_Click()
 For Each cnt In ActiveSheet.OLEObjects
  If TypeOf cnt.Object Is MSForms.OptionButton Then
    cnt.Object.Value = False
  End If
 Next
End Sub

Q現在、ASP.NET(言語:VB.NET)にて、

現在、ASP.NET(言語:VB.NET)にて、
データ参照、更新系のWebアプリケーションを自学しているものですが、
DAC(Data Access Componet)を利用してSQL Serverのデータを取得、更新する際、
コネクションの閉じ方が分からず困っています。

DACを使用しない場合は、
下記のようにSQLConnectionをUsing句で明示的に括り、
Closeさせることができますが、
DACを使用した場合はTableAdapterからSQLConnectionを取得できず、
同様の実装方法を採れません。

------------------
Dim mySelectQuery As String = "SELECT * FROM Categories ORDER BY CategoryID"
Dim myConnectString As String = "Persist Security Info=False;Integrated Security=SSPI;database=northwind;server=mySQLServer"
Dim myCommand As New SqlCommand(mySelectQuery)

Using conn AS SqlConnection = New SqlConnection(myConnectString)

myCommand.Connection =conn
myCommand.CommandTimeout = 15
myCommand.CommandType = CommandType.Text
myCommand.ExecuteNonQuery()

End Using
------------------

一方、DACを使用した場合は下記のように実装しております。

------------------

Dim ta As New SystemError_OriginalTableAdapters.OriginalTableAdapter
Dim dt As New SystemError_OriginalDataTable

ta.FillBy(dt, id) ' テーブルアダプターのFillメソッドを呼び出すのみで、Closeしているかどうかがわからない。

------------------

DACでは、Fillメソッド実行後に必ずSQLConnectionがCloseされることが
保証されているなら問題は無いのですが、
そうでない場合、テーブルアダプターからSQLConnectionを取得して、
明示的にCloseさせてやりたいと思っています。

DACを使用した場合のSQLConnectionの取得方法、
もしくはSQLConnectionのCloseの方法についてご教授願えないでしょうか?

以上、宜しくお願いします。

現在、ASP.NET(言語:VB.NET)にて、
データ参照、更新系のWebアプリケーションを自学しているものですが、
DAC(Data Access Componet)を利用してSQL Serverのデータを取得、更新する際、
コネクションの閉じ方が分からず困っています。

DACを使用しない場合は、
下記のようにSQLConnectionをUsing句で明示的に括り、
Closeさせることができますが、
DACを使用した場合はTableAdapterからSQLConnectionを取得できず、
同様の実装方法を採れません。

------------------
Dim mySelectQuery As String = "S...続きを読む

Aベストアンサー

明示的にOpen/Closeしないのがお勧め

----
DbDataAdapter.Fill メソッド
http://msdn.microsoft.com/ja-jp/library/905keexk.aspx

>Fill を呼び出す前に接続が閉じていた場合は、接続が開かれ、データを取得した後で再び閉じられます。

----
ADO.NET パフォーマンスの向上
http://msdn.microsoft.com/ja-jp/library/ms998569.aspx

> 1 つの Fill 処理または Update 処理を実行する場合、Fill メソッドを呼び出す前に接続を開かないでください。
> DataAdapter が自動的に接続を開閉するためです。
> SqlDataAdapter は自動的に接続を開き、選択されたコマンドを実行し、終了したら接続を閉じます。
> これにより、接続が開いている時間を最小限に抑えることができます。

Qjqueryでラジオボタンの値を取得

<input name="nr" value="0" type="radio" />いない
<input name="nr" value="1" type="radio" />いる
の選択に応じて400円の金額を追加するプログラムをjqueryで作成しようとしています。
ラジオボタンの選択の値を取得することが出来ません。どのようにしたら良いでしょうか?
教えてください。
よろしくお願いします。

Aベストアンサー

$("input[name=nr]:checked").val();

で、いないがチェックされている場合は0、いるがチェックされている場合は1が取得できます。

Q.NETを使用せずに、ASP・VBScriptで前のレコードボタン環境:(WinXP_pro、IIS、ACCESS)

お世話になってます。
前頁で検索した後、ACCESSのデータベースに接続し次のレコードまたは前のレコードを表示するボタンを設けたい

<%@ Language="VBScript" %>
<%
pickup = Request.Form("uID")
'MS Access Database Filename
MSACFN = Server.MapPath("db名.mdb")
'Data Source Name
DBFile="Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & MSACFN
'Data Output
Set DBCon = Server.CreateObject("ADODB.Connection")
DBCon.Open DBFile
sql="select * from table名 where uID = '"&pickup&"'"
Set DBexe = DBCon.Execute(sql)
%>
<HTML>
<BODY>
<title>データ変更</title>
<form method="POST" action="接続先.asp">
<table width="519" border="0">
<tr><td width="200">ID </td><td width="280"><%= DBexe("uID") %> </td></tr>
<tr><td>氏名 </td><td><input type="text" size="70" name="NAME" value="<%= DBexe("NAME")%>"></td></tr>
<tr><td> </td>
<td align="right">
<input type="submit" value="登録" onClick='return checkForm()'>
<input type="reset" value="リセット"></td></tr><br>
</table>
<INPUT TYPE="button" name="movefirst" onClick="ShowPrev()" value="先頭のレコード">
<INPUT TYPE="button" name="moveprevios" onClick="ShowPrev()" value="前のレコード">
<input TYPE="button" name="movenext" onClick="ShowNext()" value="次のレコード">
<input TYPE="button" name="movelast" onClick="ShowNext()" value="最終のレコード">
</form>
<input name="uID" type="hidden" id="uID" value="go"><br>
<input type="hidden" name="form" value="go">
<br>
</body>
</html>

お世話になってます。
前頁で検索した後、ACCESSのデータベースに接続し次のレコードまたは前のレコードを表示するボタンを設けたい

<%@ Language="VBScript" %>
<%
pickup = Request.Form("uID")
'MS Access Database Filename
MSACFN = Server.MapPath("db名.mdb")
'Data Source Name
DBFile="Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & MSACFN
'Data Output
Set DBCon = Server.CreateObject("ADODB.Connection")
DBCon.Open DBFile
sql="select * from table名 where uID = '"&pickup&...続きを読む

Aベストアンサー

</form> の位置が違うような気がします。
<input TYPE="button" name="movelast" onClick="ShowNext()" value="最終のレコード">
</form>
<input name="uID" type="hidden" id="uID" value="go"><br>
<input type="hidden" name="form" value="go">
<br>
ではなく
<input TYPE="button" name="movelast" onClick="ShowNext()" value="最終のレコード">
<input name="uID" type="hidden" id="uID" value="go"><br>
<input type="hidden" name="form" value="go">
</form>
<br>

Q(jQuery)ラジオボタン選択値を配列で送信

ちょっと前に別の方の同名の質問があり、正しい回答が出る前に、例によって不適切な回答で閉め切られてしまったため、失礼とは存じますが改めて質問させていただきます。

<form id="enqe" action="/hoge/enqe" method="post">

<label for="group_a">好きなフレームワーク</label>
<input type="radio" name="group_a" value="a1">cake php</input>
<input type="radio" name="group_a" value="a2">fuel php</input>
<input type="radio" name="group_a" value="a3">symphony</input>

<label for="group_b">使っているOS</label>
<input type="radio" name="group_b" value="b1">windows</input>
<input type="radio" name="group_b" value="b2">macintosh</input>
<input type="radio" name="group_b" value="b3">linux</input>

<label for="group_c">使っているCPU</label>
<input type="radio" name="group_c" value="c1">ivy bridge</input>
<input type="radio" name="group_c" value="c2">sandy bridge</input>

</form>

のような選択肢があって、選択値を配列で送信したいです。

配列で受けたい理由は、送信側のフォーム(項目、グループ分け)が逐次追加変更される予定で、それに合わせてDBだけを変更して対応したいからです。
したがって、「毎度サーバサイドで対応しろ」という回答は困ります。

<input type="hidden" name="gval[]" value="a1" />
<input type="hidden" name="gval[]" value="b2" />
<input type="hidden" name="gval[]" value="c3" />

という内容を生成して送信すればいいのはわかりますが、どう記述したらいいかがわかりません。

いちおうjQueryで、

$('form#enqe').submit(function(){
// $(this).find("input[type='radio']"); で、<input type="radio">を取得
});

まではわかりましたが、jQueryに疎く、その先がわかりません。
識者の方々のお力をお借りできれば幸いです。

ちょっと前に別の方の同名の質問があり、正しい回答が出る前に、例によって不適切な回答で閉め切られてしまったため、失礼とは存じますが改めて質問させていただきます。

<form id="enqe" action="/hoge/enqe" method="post">

<label for="group_a">好きなフレームワーク</label>
<input type="radio" name="group_a" value="a1">cake php</input>
<input type="radio" name="group_a" value="a2">fuel php</input>
<input type="radio" name="group_a" value="a3">symphony</input>

<label for="group_b">使っ...続きを読む

Aベストアンサー

通常版で書き換えてみました。

jQuery('#enqe').submit(function(){
var that = this;
jQuery('input[type="radio"]:checked','#enqe').each(function(i){
$("<input>").attr({
'type':'hidden',
'name':'hoge['+i+']'
}).val(jQuery(this).val()).appendTo(that);
});
return true;
});

QASP.NETのWebアプリをVBで開発したいASP初心者の質問

急にWebシステムをつくることになった元プログラマーです。PG言語はC、VB、PL/SQL、シェルとかを中心にやってました。但しVBはバージョン6の時代にWindowsアプリを開発していたので、Web開発の経験はありません。

マイクロソフトのWebサイトから「Web Matrix」という
フリーの開発ソフトをダウンロードして試用したところ、なんとかASP.NETで開発できそうだ、という感触を得たので、ASP.NETで開発しようと考えています。

以下の点について教えて頂けないでしょうか。

(1)ユーザーコントロールを作成して、それをブラウザ(IEのみ使用)単体で実行させることは可能でしょうか?どういうことかと言うと「複数の条件を指定して簡単なシミュレーション」を行いたいのですが、シミュレーション処理は、サーバー側ではなく、クライアント側で行いたいのです。

(2)ユーザーコントロールが作成できて、なおかASP.NETで動くためのアプリケーションを開発するには
Visual Basic .NET 2003(一番安い製品)
で十分でしょうか?
Visual Studioとかは高価すぎますし、C#とかも不要です。いまいちそこらへんの製品体系が複雑すぎて理解できずにいます。

なにか勘違いしてる点とか、参考になりそうなサイト等も教えて頂ければうれしいです。

レベルの低い質問で恐縮ですが、教えて頂けないでしょうか。よろしくお願いします。

急にWebシステムをつくることになった元プログラマーです。PG言語はC、VB、PL/SQL、シェルとかを中心にやってました。但しVBはバージョン6の時代にWindowsアプリを開発していたので、Web開発の経験はありません。

マイクロソフトのWebサイトから「Web Matrix」という
フリーの開発ソフトをダウンロードして試用したところ、なんとかASP.NETで開発できそうだ、という感触を得たので、ASP.NETで開発しようと考えています。

以下の点について教えて頂けないでしょうか。

(1)ユーザーコントロールを作成して...続きを読む

Aベストアンサー

> シミュレーション処理は、サーバー側ではなく、クライアント側で行いたいのです。

実装は、クライアント側の技術(DHTML, JavaApplet, ActiveX, Flash, .NETマネージコントロール等)でしょう。
ASP.NETはサーバー側の技術なので、これはASP.NETとは関係ない話です。

Qラジオボタンを押すと、ランダムでサイコロの写真を変えたい

VisualBasic.Net英語版を使用しています。

現在大学でYahtzeeというサイコロゲームを作るプロジェクトをグループでやっていますが、チーム全員が行き詰っていまして、こちらに質問させていただきます。
'------------
5つのサイコロ画像つきラジオボタン(デフォルトは1の目から5の目と上から順に)と、「サイコロを振る」ボタン、そして「サイコロリセット」ボタンがあります。

「サイコロを振る」ボタンを押して5つのサイコロの画像をランダムで変えます。良い目が出たらそのラジオボタンを押し、画像を固定。そうすると「サイコロを振る」ボタンを押しても画像が変わりません。3回「サイコロを振る」ボタンを押すともう「サイコロを振る」ボタンは機能しません。

「サイコロリセット」ボタンを押すと上から順にラジオボタンの絵が1,2,3,4,5の目の絵に変わります。
'------------

説明が下手で申し訳ありません。Yahtzeeというゲームを遊んだことが有る方ならすぐわかっていただけると思いますが…。

ご質問には補足しますので、どうかよろしくお願いしますm(_ _)m

VisualBasic.Net英語版を使用しています。

現在大学でYahtzeeというサイコロゲームを作るプロジェクトをグループでやっていますが、チーム全員が行き詰っていまして、こちらに質問させていただきます。
'------------
5つのサイコロ画像つきラジオボタン(デフォルトは1の目から5の目と上から順に)と、「サイコロを振る」ボタン、そして「サイコロリセット」ボタンがあります。

「サイコロを振る」ボタンを押して5つのサイコロの画像をランダムで変えます。良い目が出たらそのラジオボタンを押し、画像を...続きを読む

Aベストアンサー

Yahtzeeで遊んだことがないので、
(1) ボタン押下でラジオボタンの画像がランダムに切り替る
(2) ラジオボタン押下で画像切り替えが止まる
(3) 再度ボタン押下でも画像は止まったまま
のソースを以下に示します。
因みにラジオボタンは一つで、画像を切り替えるために
フォームに別途イメージリスト(ImageList)を追加しました。

Public Class Form1
Inherits System.Windows.Forms.Form

'ラジオボタンのスレッド
Private RadioThread1 As System.Threading.Thread
'ラジオボタンの画像切り替えクラスのインスタンス
Private Radio1 As RadioImage

'(1)ボタン押下でラジオボタンの画像がランダムに切り替る
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
'ラジオボタン画像切り替えクラスのインスタンス作成
Radio1 = New RadioImage(Me.RadioButton1)

'画像切り替え処理のスレッド作成
RadioThread1 = New System.Threading.Thread(AddressOf Radio1.Rndom)
'画像切り替え処理のスレッド起動
RadioThread1.Start()
RadioThread1.Name = "Radio1"
End Sub

'(2) ラジオボタン押下で画像切り替えが止まる
Private Sub RadioButton1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RadioButton1.CheckedChanged
'画像切り替え処理のスレッド終了
RadioThread1.Abort()
RadioThread1.Join()
'ラジオボタン画像固定
Radio1.Fix()
End Sub

'ラジオボタン画像切り替えクラス
Class RadioImage
Dim objRadio As RadioButton

'コンストラクタ
Public Sub New(ByVal pRadio As RadioButton)
MyBase.New()
objRadio = pRadio
End Sub

'画像切り替えメソッド
Public Sub Rndom()
If objRadio.Tag = "FIX" Then
Exit Sub
End If

Randomize()
While True
objRadio.ImageIndex = CInt(Int((4 - 0 + 1) * Rnd() + 0))
objRadio.Refresh()
End While
End Sub

'画像固定メソッド
Public Sub Fix()
objRadio.Tag = "FIX"
End Sub
End Class
End Class

お役にたてば幸いです。

Yahtzeeで遊んだことがないので、
(1) ボタン押下でラジオボタンの画像がランダムに切り替る
(2) ラジオボタン押下で画像切り替えが止まる
(3) 再度ボタン押下でも画像は止まったまま
のソースを以下に示します。
因みにラジオボタンは一つで、画像を切り替えるために
フォームに別途イメージリスト(ImageList)を追加しました。

Public Class Form1
Inherits System.Windows.Forms.Form

'ラジオボタンのスレッド
Private RadioThread1 As System.Threading.Thread
'ラジオボタンの...続きを読む

QASP.Net と JavaScript の関係、将来について。

ASP.Net で コントロールにフォーカスをあてる際、JavaScript (From AtMarkIT) を埋め込むしか方法がない事が発覚しました。クライアントサイドの動作を拾うわけですからとうぜんかもしれませんが、腑に落ちません。実際、ASP.Net で JavaScript を埋め込むケースは自然かつ必要なのでしょうか? 実用的な側面から、ASP.Net と JavaScript の関係をどう考えればよいでしょうか?皆さんの意見をお聞かせ下さい。また、将来的にどうなるかについても御意見を賜りたいと思います。

よろしくおねがいします。

Aベストアンサー

まずASP.NETとJavascriptの動作の違いを理解していないと、どうして二つの技術が同時に必要かわからないと思います。
簡単にいってしまえば
ASP.NETはWebサーバで動的にHTMLソースコードを作成しクライアントPCに送信する技術
JavascriptはクライアントPCに送られた後のHTMLソースコードやクッキーなどオブジェクトを操作するための技術
です。
なのでJavascriptを一切使わなくてもASP.NETだけでフォーカスを当てたりなどのJavascriptで出来ることは大抵行うことが出来ます。
(正確に言えばASP.NETが自動的にJavascriptを生成しますが。。。)
しかしそのたびにWebサーバへ接続していたのでは、レスポンスが悪くなるし、Webサーバにも負荷がかかります。
なのでクライアントPCで出来ることは極力Javascriptを使用して解決するのが主流になっています。
フォーカスを当てるのにWebサーバへ接続はちょっと無駄がありますから(笑
>将来的にどうなるかについても御意見を賜りたいと思います。
当分はどちらも併用されます
またいままではASP.NETはページ全体を書き換えていたのですが、ページの一部を書き換えていくAjax(エージャックス)技術を積極的に採用するようになるでしょう。AjaxのソースはJavascriptの塊です

まずASP.NETとJavascriptの動作の違いを理解していないと、どうして二つの技術が同時に必要かわからないと思います。
簡単にいってしまえば
ASP.NETはWebサーバで動的にHTMLソースコードを作成しクライアントPCに送信する技術
JavascriptはクライアントPCに送られた後のHTMLソースコードやクッキーなどオブジェクトを操作するための技術
です。
なのでJavascriptを一切使わなくてもASP.NETだけでフォーカスを当てたりなどのJavascriptで出来ることは大抵行うことが出来ます。
(正確に言えばASP.NETが自動的...続きを読む


人気Q&Aランキング

おすすめ情報