- PR -

[]の付いた名前をJavaScritで処理したい

1
投稿者投稿内容
mso
ぬし
会議室デビュー日: 2003/12/04
投稿数: 496
お住まい・勤務地: 宮城
投稿日時: 2005-10-04 00:33
msoです。

JavaScriptについて質問をしたいのですが、
どこにして良いのかわからないためここに質問させて頂きます。

JavaScriptで[](中括弧?)を使った名前のオブジェクトを処理したいのですが、
思うとおりに動作をしてくれません。

サンプル
コード:
<html>
<head>
<title>test</title>
<script language="JavaScript">
<!--
function EVENT1()
{
	var df = document.forms[0];
	df.txtHoge2.disabled = 'disabled';
	df.selNumber[].disabled = 'disabled';

}
// -->
</script>
</head>
<body>

<form name="test">
<table>
	<tr>
		<td><input type="button" value="test" name="txtHoge1" onclick="EVENT1()"></td>
		<td><input type="text"   value="aaaa" name="txtHoge2"></td>
	</tr>
	<tr>
		<td colspan=2>
			<select name="selNumber[]" multiple size=5>
				<option>100</option>
				<option>200</option>
				<option>300</option>
				<option>400</option>
				<option>500</option>
			</select>
		</td>
	</tr>
</table>
</form>

</body>
</html>




上記の例ですと、selNumber[]使用不可にしたいのですが、
うまく行うことができません。
どうにかしてうまく処理をすることができないでしょうか?
かつのり
ぬし
会議室デビュー日: 2004/03/18
投稿数: 2015
お住まい・勤務地: 札幌
投稿日時: 2005-10-04 00:53
[]が付かないIDを付加して、
そのIDで参照するようにすればいかがでしょうか。

コード:
<select id="selNumber1" name="selNumber[]" multiple size=5>


コード:
selNumber1.disabled = true;

Hongliang
ぬし
会議室デビュー日: 2004/12/25
投稿数: 576
投稿日時: 2005-10-04 01:16

document.getElementById('selNumber[]').disabled = 'disabled';

まあそんな変な名前を使わないのが一番ですけど。
かつのり
ぬし
会議室デビュー日: 2004/03/18
投稿数: 2015
お住まい・勤務地: 札幌
投稿日時: 2005-10-04 01:21
引用:

document.getElementById('selNumber[]').disabled = 'disabled';


id付けなくてもgetElementByIdで取得可能でしたっけ?

引用:

まあそんな変な名前を使わないのが一番ですけど。


[]付きの名前って、phpだと良く使いますね。
(ここは.NETの会議室ですが・・・)

nanbu
大ベテラン
会議室デビュー日: 2004/08/19
投稿数: 178
投稿日時: 2005-10-04 01:40
南部です。

document.form_name["tag_name"]で参照できるので、
この場合、
df["selNumber[]"].disabled = 'disabled';
ですね。
Hongliang
ぬし
会議室デビュー日: 2004/12/25
投稿数: 576
投稿日時: 2005-10-04 01:42
うあ、nameでしたか。
では
document.getElementsByName('selNumber[]')[0].disalbed = 'disabled';
で。

IE6ではByIdで(そのID属性が存在しない場合)ByName('hoge')[0]と同じ要素が取れますが、明らかにブラウザ依存ですね。
かつのり
ぬし
会議室デビュー日: 2004/03/18
投稿数: 2015
お住まい・勤務地: 札幌
投稿日時: 2005-10-04 02:19
引用:

document.form_name["tag_name"]で参照できるので


なるほど。勉強になりますね〜。
mso
ぬし
会議室デビュー日: 2003/12/04
投稿数: 496
お住まい・勤務地: 宮城
投稿日時: 2005-10-04 23:54
msoです。

いろいろとありがとうございます。
idを使うことで期待通りに処理を行うことが出来ました。

あと、ご指摘の通り言語はPHPです。
単純にJavaScriptのことを聞きたかったので、
ここに書かせて頂きました。
1

スキルアップ/キャリアアップ(JOB@IT)