【发布时间】:2013-08-27 01:59:04
【问题描述】:
我正在尝试学习表单构建。我有一个表单,我想根据选择的单选按钮将某些变量的值分配给某些表单字段。但我的代码始终默认为第一个单选选项,无论我选择哪一个。
我尝试链接“if”条件、if/else 条件并更改变量名,但没有任何区别。
我还发现代码在 JSfiddle (http://jsfiddle.net/GEZPU/1/) 中不起作用,但我不确定为什么它说函数未定义?。
HTML
Input 1
<select id="box0">
<option>Tampa</option>
<option>Phoenix</option>
</select>
<br>
<br>Input 2
<select id="box1">
<option>Bucs</option>
<option>Cards</option>
</select>
<br>
<br>If option radios
<br>
<br>
<input type="radio" id="box2" name="football" value="No Data">No Data
<br>
<br>
<input type="radio" id="box3" name="football" value="No Playoffs">No Playoffs
<br>Games to go?
<input id="box4" size="10">Superbowl location?
<input id="box5" size="10">
<br>
<br>
<input type="radio" id="box6" name="football" value="Yes Playoffs">Made Playoffs
<br>Superbowl location?
<input id="box7" size="10">
<p>
<input value="Write summary" onclick="writetext()" type="button">
<br>
<form>
<textarea rows="35" cols="45" placeholder="Template" id="output"></textarea>
</form>
<br>
</p>
代码
function writetext() {
var mytext = document.getElementById('output');
var captext = "";
// Checklist variables
var box_0 = $("#box0").val();
var box_1 = $("#box1").val();
captext += box_0 + "\n - " + box_1 + "\n ";
if ($('#box2').prop("checked ", true)) {
var box_margin = $("#box2").val();
captext += "\nMargins: \n - " + box_margin + "\n ";
}
if ($('#box3').prop("checked ", true)) {
var box_margin2 = $("#box3").val();
var box_margin_dist = $("#box4").val();
var box_margin_site = $("#box5").val();
captext += "\nMargins: \n - " + box_margin2 + "\n - Dist: " + box_margin_dist + "\n - margin " + box_margin_site + "\n ";
}
if ($('#box6').prop("checked ", true)) {
var box_margin3 = $("#box6 ").val();
var box_margin_site3 = $("#box7 ").val();
captext += "\nMargins: \n - " + box_margin3 + "\n - (Specify margin)" + box_margin_site3 + "\n ";
}
mytext.value = captext;
}
【问题讨论】:
-
无论如何你都在使用 jQuery,将它用于一切。你的支票是错的。这应该做你想做的事,注意按钮触发方式的变化。 jsfiddle.net/T9HWD/2
标签: javascript jquery forms if-statement radio-button