正しいボタンをデータベースに投稿できるようにするためのサポートが必要です。しかし、ボタンの値を投稿するときに$_POSTメソッドを何と呼ぶべきかわかりません。
ここで表示できるアプリケーションがあります
アプリケーションを使用するには、以下の手順に従ってください。
- 「グリッドを開く」リンクをクリックしてボタン「5」を選択すると、5つのボタン「AE」が下に表示されます。
- ボタン「A」および「C」をクリックすると、これらのボタンが緑色に変わり、オンになったことを意味します。
- 次に、[質問を追加]ボタンをクリックして、行ったことを下の表の行に追加します。
- ここでもう一度手順1〜3を繰り返しますが、今回はボタン「7」を選択してボタン「AG」を表示し、ボタン「B」、「D」、「F」をクリックしてこれらのボタンをオンにします。
これで、2つのテーブル行があり、最初のテーブル行にはボタン「A」と「C」がオンになっており、2番目の行にはボタン「B」、「D」、「F」がオンになっていることがわかります。
私の質問は、ボタンをオンにしたものだけを$ _POSTするにはどうすればよいですか(上記の例では、「A」と「C」を投稿し、「B」、「D」、「F」を投稿する必要がありますか? $ _POSTメソッドを作成する必要がありますか?
以下は、トップコントロールと追加された行の文字ボタンを出力するコードです。
トップコントロールの文字ボタン
<table id="optionAndAnswer" class="optionAndAnswer">
<tr>
<th colspan="2">
Option and Answer
</th>
</tr>
<?php
$a = range("A","Z");
?>
<table id="answerSection">
<tr>
<?php
$i = 1;
foreach($a as $key => $val){
if($i%7 == 1) echo"<tr><td>";
echo"<input type=\"button\" onclick=\"btnclick(this);\" value=\"$val\" id=\"answer".$val."\" name=\"answer".$val."Name\" class=\"answerBtns answers answerBtnsOff\">";
if($i%7 == 0) echo"</td></tr>";
$i++;
}
?>
</tr>
<tr>
<td>
<input class="answerBtns answers answerBtnsOff" name="answerTrueName" id="answerTrue" type="button" value="True" onclick="btnclick(this);"/>
<input class="answerBtns answers answerBtnsOff" name="answerFalseName" id="answerFalse" type="button" value="False" onclick="btnclick(this);"/>
<input class="answerBtns answers answerBtnsOff" name="answerYesName" id="answerYes" type="button" value="Yes" onclick="btnclick(this);"/>
<input class="answerBtns answers answerBtnsOff" name="answerNoName" id="answerNo" type="button" value="No" onclick="btnclick(this);"/>
</td>
</tr>
</table>
</td>
</tr>
</table>
以下は、各行に追加された文字ボタンです
function insertQuestion(form) {
var context = $('#optionAndAnswer');
var currenttotal = context.find('.answerBtnsOn').length;
var $tbody = $('#qandatbl > tbody');
var $tr = $("<tr class='optionAndAnswer' align='center'>");
var $td = $("<td class='extratd'>");
var $answer = $("<div class='answer'>3. Answer:<br/></div>");
var $this, i=0, $row, $cell;
$('#optionAndAnswer .answers').each(function() {
$this = $(this);
if(i%7 == 0) {
$row = $("<tr/>").appendTo($answer);
$cell = $("<td/>").appendTo($row);
}
var $newBtn = $("<input class='answerBtnsRow answers' type='button' style='display:%s;' onclick='btnclick(this);' />".replace('%s',$this.is(':visible')?'inline-block':'none')).attr('name', $this.attr('name')).attr('value', $this.val()).attr('class', $this.attr('class')).attr('id', $this.attr('id')+'Row');
$newBtn.appendTo($cell);
i++;
});
$tr.append($td);
$td.append($answer);
$tbody.append($tr);
}
以下は、ボタンをオンまたはオフにするjquery関数です。
function btnclick(btn)
{
var context = $(btn).parents('#optionAndAnswer');
if (context.length == 0) {
context = $(btn).parents('tr');
}
var $btn = $(btn);
$(btn).toggleClass("answerBtnsOff");
$(btn).toggleClass("answerBtnsOn");
return false;
}