「夫を成功」へ導く妻の秘訣 座談会

htmlのフォームのチェックボックスを繰り返し文等を使って複数作りたいのですが、どのように書けば良いのかわかりません。
自分はhtml、PHP、Perlの基本的なことはわかります。

例えば、以下のようなチェックボックスを繰り返し文などを使って作るとすると、どのように書けばよいのでしょうか?

<input type="checkbox" name="test">test1
<input type="checkbox" name="test">test2
<input type="checkbox" name="test">test3
<input type="checkbox" name="test">test4
<input type="checkbox" name="test">test5

よろしくお願いします。

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

A 回答 (3件)

>自分はhtml、PHP、Perlの基本的なことはわかります。



なら単純に
for(1..5){
print "<input type=\"checkbox\" name=\"test\" value=\"$_\">test$_\n";
}
「htmlのフォームのチェックボックスを繰」の回答画像2
    • good
    • 0
この回答へのお礼

ありがとうございました。
print文でhtmlを埋め込むのが苦手だったのでわかりませんでした。

お礼日時:2010/05/17 10:41

DOMでやろうと思わない限り、こんな感じでできるとおもいますが・・・


結局1,2,3みたいに序数をつけて表示するのはまれなので、配列に
いれておいたほうがいいと思いますが

<?
for($i=1;$i<=5;$i++){
print <<<eof
<input type="checkbox" name="test">test{$i}

eof;
}
?>
    • good
    • 0
この回答へのお礼

ありがとうございました。

お礼日時:2010/05/26 00:46

「PHP、Perlの基本的なことはわかります。


なら、どの部分の事かわかりませんが、何故できないのか理解に苦しみます。
単に変数の値を変えながら、print文をループするだけだと思うのですが。
    • good
    • 0
この回答へのお礼

ありがとうございました。

お礼日時:2010/05/17 10:12

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

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

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

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

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

Q同じものを繰り返し表示させる

下記の(1)のような「1」~「3」まで選択可能なセレクトメニューにおいて、
「1」を選択すると(2)の部分を1つ、「2」を選択すると(2)の部分を2つ、「3」を選択すると(2)の部分を3つ、表示させるようにしたいと思っています。
(2)の部分を3つ書き、JavaScriptを使用して(1)のセレクトメニューで選択した数によって、
(2)の部分を1つ表示させたり、2つ表示させたり、3つ表示させたりすることはできました。
しかし、3つならまだよいのですが、5つ、6つ、それ以上となると、
(2)の部分を5つ、6つも同じことを書くのは面倒で、無駄が多いように思います。
(2)の部分を1つだけ書いた上で、(1)の選択した数の分だけ(2)を表示させる方法はないでしょうか。
よろしくお願いいたします。

(1)--------------------------------
<select name="id">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
-----------------------------------

(2)--------------------------------
<table>
<tr>
<td>
<select name="number">
<option value="1000">1000</option>
<option value="2000">2000</option>
<option value="3000">3000</option>
</select>
</td>
</tr>

<tr>
<td>
<select name="name">
<option value="sato">sato</option>
<option value="sakamoto">sakamoto</option>
<option value="hanada">hamada</option>
<option value="wakui">wakui</option>
</select>
</td>
</tr>
</table>
-----------------------------------

下記の(1)のような「1」~「3」まで選択可能なセレクトメニューにおいて、
「1」を選択すると(2)の部分を1つ、「2」を選択すると(2)の部分を2つ、「3」を選択すると(2)の部分を3つ、表示させるようにしたいと思っています。
(2)の部分を3つ書き、JavaScriptを使用して(1)のセレクトメニューで選択した数によって、
(2)の部分を1つ表示させたり、2つ表示させたり、3つ表示させたりすることはできました。
しかし、3つならまだよいのですが、5つ、6つ、それ以上となると、
(2)の部分を5つ、6つも同じことを書く...続きを読む

Aベストアンサー

いろいろやり方はあるでしょうけど、とりあえず
ただ同じデータを表示するなら以下のような感じで
繰り返し表示処理をするとよいでしょう。

selectタグの名前を変えたりするならもう少し
プログラム的な処理が必要になります。

<html>
<head>
<script language=javascript>
function view(){
var obj=document.getElementById('count');
var str="";
for(i=0;i<obj.value;i++){
str+=document.getElementById('hiddenArea').innerHTML;
}
document.getElementById('viewArea').innerHTML=str;
}
</script>
</head>
<body onLoad="view()">
<form>
<select id="count" onChange="view()">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
</form>
<div id="hiddenArea" style="display:none;">
<table>
<tr>
<td>
<select name="number">
<option value="1000">1000</option>
<option value="2000">2000</option>
<option value="3000">3000</option>
</select>
</td>
</tr>
<tr>
<td>
<select name="name">
<option value="sato">sato</option>
<option value="sakamoto">sakamoto</option>
<option value="hanada">hamada</option>
<option value="wakui">wakui</option>
</select>
</td>
</tr>
</table>
</div>
<div id="viewArea"></div>
</body>
</html>

いろいろやり方はあるでしょうけど、とりあえず
ただ同じデータを表示するなら以下のような感じで
繰り返し表示処理をするとよいでしょう。

selectタグの名前を変えたりするならもう少し
プログラム的な処理が必要になります。

<html>
<head>
<script language=javascript>
function view(){
var obj=document.getElementById('count');
var str="";
for(i=0;i<obj.value;i++){
str+=document.getElementById('hiddenArea').innerHTML;
}
document.getElementById('viewArea').innerHTML=str;
...続きを読む

Qチェックボックスから複数のvalueを取り出す

HTMLフォームから、action="file.php"でデータの受け渡し→PHPで送られてきたvalueに応じて文章を出力、というプログラムを作っています。

例:
グループAのラジオボタン1にチェック、送信
→グループAで押されたラジオボタンを送信されたvalueで判別、この場合はvalue==A
→value==Aの場合に表示する文章を変数に受け渡し、その変数で表示

ラジオボタン、テキストボックスのvalueは$_POST['XXX']で取り出せたのですが、チェックボックスのデータだけが取り出せません。こちらの質問を検索したとき、多次元配列という言葉を見かけたのですが、いまいちよく分かりませんでした。
チェックボックスの複数のvalueで、上記の例のような動きを実現させるにはどうしたらいいでしょうか。どなたかご教授ください。

Aベストアンサー

チェックボックスはちょっと特殊

まずHTML部分で、以下のように定義します
<input type="checkbox" name="sample[]" value="test1">test1
<input type="checkbox" name="sample[]" value="test2">test2

ここでは、nameの部分に[]をつけるのがポイント


次にphpで受け取る方法として、
$sample = $_POST["sample"];
で問題ありません。

受け取ったデータを使うときは、$sampleは配列になっていますので、
仮に上記のtest1とtest2両方にチェックが付いているとしたら、
$sample[0]にはtest1が、$sample[1]にはtest2が入っています。

$sampleをforeachで使うか、$sampleのデータ数を調べてforでループさせるなどで使えます。

Qループで連続したフォームの値を読み込む

こんにちは

ループで苦労しています。
nameが数字で連続したフォームがいくつかあり、それをループで読み取りたいのです。私が作ったものは以下のものです。でもエラーになります。どこが悪いのかどなたかご教授ください。

<script>
function ggo(){
for (i=1; i<=3; i++){
document.write(document.forms["myFORM"].elements["k"+i].value);
}}
</script>
<form name="myForm">
<input type="text" name="k0"><br>
<input type="text" name="k1"><br>
<input type="text" name="k2"><br>
<input type="button" value="hai" onClick="ggo()">
</form>

それから、余談ですが以下のスクリプトはループを1回にするとkipをエラー無しで読み込んでくれますが、2回以上にするとエラー表示とともに1度しか読み込んでくれませんなぜなのでしょうか?ひとつの書き込みにに1つの質問が原則なのでこちらの質問に答えていただける方がいらっしゃればそれもとてもありがたいです。欲張ってすいません。
<script>
function ggo(){
for (i=0; i<=2; i++){
document.write(document.myForm.kip.value);
}
}
</script>
<form name="myForm">
<input type="text" name="kip"><br>
<input type="button" value="hai" onClick="ggo()">
</form>

↓参照しました↓
http://oshiete1.goo.ne.jp/qa820843.html

こんにちは

ループで苦労しています。
nameが数字で連続したフォームがいくつかあり、それをループで読み取りたいのです。私が作ったものは以下のものです。でもエラーになります。どこが悪いのかどなたかご教授ください。

<script>
function ggo(){
for (i=1; i<=3; i++){
document.write(document.forms["myFORM"].elements["k"+i].value);
}}
</script>
<form name="myForm">
<input type="text" name="k0"><br>
<input type="text" name="k1"><br>
<input type="text" name="k2"><br>
<inpu...続きを読む

Aベストアンサー

最初の質問は、No.1の方が書かれているのに補足ですが、
for文のカウンタが1~3までになっているので、
"k" + iは、k1、k2、k3となりコントロール名と異なります。
また、共通で、document.write()にする場合、
ループの1回目で出力処理により、フォームの内容が失われてしまうので、
document.forms[name].elements[name].valueは参照不可になります。

実現したいのであれば、
(1)
function ggo(){
 var str = "";
 for (i=0; i< 3; i++){
  str += document.forms["myForm"].elements["k" + i].value + "<BR>";
 }
 document.write(str);
}
(2)
function ggo(){
 var val = document.myForm.kip.value + "<BR>";
 for (i=0; i<=2; i++){
  document.write(val);
 }
}

このように変数に格納して表示した方がいいと思います。

最初の質問は、No.1の方が書かれているのに補足ですが、
for文のカウンタが1~3までになっているので、
"k" + iは、k1、k2、k3となりコントロール名と異なります。
また、共通で、document.write()にする場合、
ループの1回目で出力処理により、フォームの内容が失われてしまうので、
document.forms[name].elements[name].valueは参照不可になります。

実現したいのであれば、
(1)
function ggo(){
 var str = "";
 for (i=0; i< 3; i++){
  str += document.forms["myForm"].elements["k" + ...続きを読む

QonClickに複数の関数を挿入する方法

初心者なのですがアニメーションの関数anime1、anime2、anime3を作成し、onClickに下記のように設定しました。
クリックするとアニメーション2つの設定ではは動くのですが、3つ目を設定すると動かなくなります。
通常はこのような設定はしないものなのでしょうか?
教えてください。
よろしくお願いします。
<INPUT type="button" value="START" onClick="anime1(), anime2()">・・・OKです。
<INPUT type="button" value="START" onClick="anime1(), anime2(),anime3()">・・・動きません。

Aベストアンサー

セミコロンでつなぐのが常道ですが、3つ以上なら
別途function化したほうが、可読性が高くなると
思います。

QHTMLフォームのSELECTの幅を一定にするためには?

HTMLフォームのSELECTの幅を一定にするためにはどのようにすれば
いいのでしょうか?

CSS等で設定できるとありがたいのですが、やり方がわかりません。

Aベストアンサー

<select style="width: 200px">

Qjavascriptでセレクトボックスの"selected"を動的につ

javascriptでセレクトボックスの"selected"を動的につける方法について質問させてください。

現在、以下のようなフォームを作成しました。

<select name='year'>
<option value='2010'>2010</option>
<option value='2011'>2011</option>
</select>年

<select name='month'>
<option value='1'>1</option>
<option value='2'>2</option>
<option value='3'>3</option>
<option value='4'>4</option>
<option value='5'>5</option>
<option value='6'>6</option>
<option value='7'>7</option>
<option value='8'>8</option>
<option value='9'>9</option>
<option value='10'>10</option>
<option value='11'>11</option>
<option value='12'>12</option>
</select>月

<select name='day'>
<option value='1'>1</option>
<option value='2'>2</option>
<option value='3'>3</option>
<option value='4'>4</option>
<option value='5'>5</option>
<option value='6'>6</option>
<option value='7'>7</option>
<option value='8'>8</option>
<option value='9'>9</option>
<option value='10'>10</option>
<option value='11'>11</option>
<option value='12'>12</option>
<option value='13'>13</option>
<option value='14'>14</option>
<option value='15'>15</option>
<option value='16'>16</option>
<option value='17'>17</option>
<option value='18'>18</option>
<option value='19'>19</option>
<option value='20'>20</option>
<option value='21'>21</option>
<option value='22'>22</option>
<option value='23'>23</option>
<option value='24'>24</option>
<option value='25'>25</option>
<option value='26'>26</option>
<option value='27'>27</option>
<option value='28'>28</option>
<option value='29'>29</option>
<option value='30'>30</option>
<option value='31'>31</option>
</select>日


このセレクトボックスに、例えば今日の日付"2010年9月30日"だったら、それぞれの年、月、日の<option>に"selected"をつけたいのですが、javascriptではどのようにして実現したら良いのでしょうか?

よろしくお願いします。

javascriptでセレクトボックスの"selected"を動的につける方法について質問させてください。

現在、以下のようなフォームを作成しました。

<select name='year'>
<option value='2010'>2010</option>
<option value='2011'>2011</option>
</select>年

<select name='month'>
<option value='1'>1</option>
<option value='2'>2</option>
<option value='3'>3</option>
<option value='4'>4</option>
<option value='5'>5</option>
<option value='6'>6</option>
<option value='7'>7</option>
<option value='8...続きを読む

Aベストアンサー

こんな感じで・・・

<script>
window.onload=function(){
var f=document.getElementById("f0");
var ymd=new Date();
checkSelect(f.elements["year"],ymd.getFullYear());
checkSelect(f.elements["month"],ymd.getMonth() +1);
checkSelect(f.elements["day"],ymd.getDate());
}
function checkSelect(obj,val){
for(var i=0;i<obj.length;i++){
if(obj[i].value==val){
obj[i].selected=true;
break;
}
}
}
</script>
<form id="f0">
<div>
<select name='year'>
<option value='2009'>2009</option>
<option value='2010'>2010</option>
<option value='2011'>2011</option>
</select>年

<select name='month'>
<option value='8'>8</option>
<option value='9'>9</option>
<option value='10'>10</option>
</select>月

<select name='day'>
<option value='29'>29</option>
<option value='30'>30</option>
<option value='31'>31</option>
</select>日
</div>
</form>

こんな感じで・・・

<script>
window.onload=function(){
var f=document.getElementById("f0");
var ymd=new Date();
checkSelect(f.elements["year"],ymd.getFullYear());
checkSelect(f.elements["month"],ymd.getMonth() +1);
checkSelect(f.elements["day"],ymd.getDate());
}
function checkSelect(obj,val){
for(var i=0;i<obj.length;i++){
if(obj[i].value==val){
obj[i].selected=true;
break;
}
}
}
</script>
<form id="f0">
<div>
<select name='year'>
<opt...続きを読む

QHTMLファイル同士での値渡し

困っています。

HTMLファイルからHTMLファイルへ移動するときに、
HTMLファイル1でJavaScript で算出された値を
HTMLファイル2へ渡して使用したいのです。

showModalDialogだとダイアログにしか渡せないし・・・。
このように、値をそのまま次のページに渡すための方法を教えてください。
お願いします。

Aベストアンサー

すみません。うっかりしてました。

document.write(FORM[v1]);
では、v1を変数と認識してしまうので、エラーになってしまいますね。

document.write(FORM.v1);  // 「FORM.v1」です
あるいは
document.write(FORM["v1"]);
としてください。

Qhtml で 変数を定義できますか?

html(できればjava不使用)で変数に文字列をいれてつかう、またはそれに近いことはできないでしょうか?

例**************************
$color1="#000000"

<tr bgcolor=$color1>内容1<tr>
<tr bgcolor=$color1>内容2<tr>
****************************
みたいな感じです

Aベストアンサー

調べりゃ分かることは???だけど。

CSS2で無理やり作れば・・簡単だけど・・・
生成内容、自動番号振り、リスト ( http://www.swlab.it.okayama-u.ac.jp/man/rec-css2/generate.html )
 本来はXSLTで作るほうがよいかと・・・
 <th><xsl:value-of select="parson" />の歌</th>


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="ja">
<head>
<meta http-equiv="content-type" content="text/html; charset=Shift_JIS">
<title>サンプル</title>
<meta name="author" content="ORUKA1951">
<meta http-equiv="Content-Style-Type" content="text/css">
<link rev="made" href="mailto:orika1951@hoge.com" title="send a mail" >
<link rel="START" href="../index.html">
<style type="text/css">
<!--
.parson1:before{content:"田中";}
p.age1:after{content:"36歳";}
-->
</style>
</head>
<body>
<h1>サンプル</h1>
<p class="parson1">は男の子</p>
<p class="parson1 age1">の年齢は</p>
<p>私の彼氏は<span class="parson1">君だよ</p>
</body>
</html>

調べりゃ分かることは???だけど。

CSS2で無理やり作れば・・簡単だけど・・・
生成内容、自動番号振り、リスト ( http://www.swlab.it.okayama-u.ac.jp/man/rec-css2/generate.html )
 本来はXSLTで作るほうがよいかと・・・
 <th><xsl:value-of select="parson" />の歌</th>


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="ja">
<head>
<meta http-equiv="content-type" content="text/html; charset=Shift_JIS">
<title>サンプル</title>
<met...続きを読む

QHTMLでのid とnameの違い

HTMLとJavaScriptを使ってWebページを作っていますが、 id と name の使い分け方がよくわかりません。 id は各エレメントに個別に与える識別子と認識していて、getElementById() メソッドなどでよく使うのですが、それと name プロパティーはどう違うのでしょうか?
あるサンプルコードに次のようなものがありました。

<a href="http://www.google.com" name="google_link">
<img src="google.gif" id="engine-1" alt="google graphic">
</a>
というHTML部分があり、しばらく後に

function show_attribs()
{
var attribs="";
attribs += "Link name: " + window.document.getElementById("engine-1").name;
.....
alert(attribs);
}
というJavaScriptの関数があり、結果としてアラートボックスに 
Link name: google_link と表示されるものです。

よくわからないのは、"engine-1" という id で取得した <img> エレメントが、 <a> エレメントに設定したはずの name プロパティー とその値を持っているということです。なんだか二つのエレメントが一体になったように扱われていますが、なぜそうなるのかわかりません。

どなたかよく説明していただけないでしょうか。お願いします。

HTMLとJavaScriptを使ってWebページを作っていますが、 id と name の使い分け方がよくわかりません。 id は各エレメントに個別に与える識別子と認識していて、getElementById() メソッドなどでよく使うのですが、それと name プロパティーはどう違うのでしょうか?
あるサンプルコードに次のようなものがありました。

<a href="http://www.google.com" name="google_link">
<img src="google.gif" id="engine-1" alt="google graphic">
</a>
というHTML部分があり、しばらく後に

function show_attribs(...続きを読む

Aベストアンサー

Link_nameを呼び出せば当然のことながら、親であるA要素のname属性の値が参照されます。
nameプロパティではなく、attrですからattribute(属性)です。
idは文書中に一箇所しかありえませんからjavascriptのターゲットとして使用するのが簡単です。
HTMLの属性のnameは、通常は一箇所ですがFORMの内部などでは複数存在し得ます。
<form>
 <input type="radio" name="ABC" value="123">
 <input type="radio" name="ABC" value="234">
 <input type="radio" name="ABC" value="456">
とか・・
 気をつけないとならないのは、リンクに関しては、name属性とid属性は同じ名前空間を持つことです。
BUTTON, TEXTAREA, APPLET
, SELECT, FORM, FRAME, IFRAME, IMG, A, INPUT, OBJECT, MAP, PARAM, META要素がname属性を持ちえますが、そのうちA、APPLET、FORM、FRAME、 IFRAME、IMG、MAP要素に関しては、idと同じ必要があります。それ以外(BUTTON, TEXTAREA, SELECT, INPUT, OBJECT, PARAM)は、id属性値とname属性値は異なっても良いです。nameは一意である必要は、条件がありますが)ありません。

Link_nameを呼び出せば当然のことながら、親であるA要素のname属性の値が参照されます。
nameプロパティではなく、attrですからattribute(属性)です。
idは文書中に一箇所しかありえませんからjavascriptのターゲットとして使用するのが簡単です。
HTMLの属性のnameは、通常は一箇所ですがFORMの内部などでは複数存在し得ます。
<form>
 <input type="radio" name="ABC" value="123">
 <input type="radio" name="ABC" value="234">
 <input type="radio" name="ABC" value="456">
とか・・
 気をつけないとな...続きを読む

Q「httpステータス404」というエラーが出ます。

「httpステータス404」というエラーが出ます。

java初心者です、宜しくお願い致します。
EclipseでServletを書いてやりましたが、以下のようなエラーが出ます、
原因はなんでしょうか、宜しくお願い致します。
「httpステータス404-/Servlet%E7%B7%B4%E7%BF%92/ ServOutput」

Aベストアンサー

Not Found
という意味です。
そのファイルが無い。あるいはリンクが間違っています。
詳しくは参考URLをみてください。

参考URL:http://ja.wikipedia.org/wiki/HTTP_404


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング