<body align="center">
<progress value="0" max="100" id="p1"></progress>
<form id="form_Warpper" onsubmit="return validateForm();">
<div class="radio_Warpper">
<p> 1. </p>
<label> I am a. </label>
<div class="allQuestion"><?php for($i=1; $i<=10; $i++){?><input type="radio" name="Dquestion[1]" id="p1" value="<?=$i?>"> <?=$i?> <?php } ?></div>
</div>
<div class="radio_Warpper">
<p> 2. </p>
<label> I am b. </label>
<div class="allQuestion"><?php for($i=1; $i<=10; $i++){?><input type="radio" name="Iquestion[1]" id="p2"value="<?=$i?>"> <?=$i?> <?php } ?></div>
</div><!-- 12 -->
<div class="radio_Warpper">
<p> 3. </p>
<label> I am c. </label>
<div class="allQuestion"><?php for($i=1; $i<=10; $i++){?><input type="radio" name="Hquestion[1]" value="<?=$i?>"> <?=$i?> <?php } ?></div>
</div><!-- 13 -->
<div class="radio_Warpper">
<p> 4. </p>
<label> I am d. </label>
<div class="allQuestion"><?php for($i=1; $i<=10; $i++){?><input type="radio" name="Aquestion[1]" value="<?=$i?>"> <?=$i?> <?php } ?></div>
</div><!-- 14 -->
<div class="radio_Warpper">
<p> 5. </p>
<label> I am e. </label>
<div class="allQuestion"><?php for($i=1; $i<=10; $i++){?><input type="radio" name="Dquestion[2]" value="<?=$i?>"> <?=$i?> <?php } ?></div>
</div><!-- 15 -->
<div class="radio_Warpper">
<p> 6. </p>
<label> I am f. </label>
<div class="allQuestion"><?php for($i=1; $i<=10; $i++){?><input type="radio" name="Iquestion[2]" value="<?=$i?>"> <?=$i?> <?php } ?></div>
</div><!-- 16 -->
<input name="submit" type="submit">Sumbit</input>
</div>
JS
<script type="text/javascript">
function incr() {
var v1=document.getElementById('p1').value;
document.getElementById("p1").value= v1 + 1;
}
</script>
我有一个带有js功能的php页面,我的目的是在每个问题上点击一个进度条,所以每个问题只能点击一次,但是如果我在同一个问题中重新点击收音机,那么这个过程会增加,我需要所有问题只能点击一次。
所以有6个问题,将是1 / 6,2 / 6等等。如何让问题广播只被点击一次,我不想要jquery或禁用收音机,我希望他们可以再次重新点击,请看看。
答案 0 :(得分:0)
我认为你需要在每个无线电输入上添加 onclick ,并为每个问题分配一个ID:
<div class="radio_Warpper">
<p> 1. </p>
<label> I am a. </label>
<div class="allQuestion"><?php for($i=1; $i<=10; $i++){?><input type="radio" name="Dquestion[1]" onclick="incr('a')" id="p1" value="<?=$i?>"> <?=$i?> <?php } ?></div>
</div>
请注意 onclick =&#34; incr(&#39; a&#39;)&#34; 会在无线电输入中插入上方。至于第二个问题,你可以使用类似 onclick =&#34; incr(&#39; b&#39;)&#34; 的内容。至于 incr 功能,我建议您添加:
var memoryPool = new Array();
function incr(id) {
var found = 0;
for (var i=0; i<memoryPool.length; i++) {
if (memoryPool[i] == id) {
found = 1;
}
}
if (!found) {
var v1=document.getElementById('p1').value;
document.getElementById("p1").value= v1 + 10;
memoryPool.push(id);
}
}
请注意,如果答案发生变化,则需要提供每个问题的ID以避免添加额外的progess值。另请注意,我将进度增加10,以便清楚地看到进度。最后,您仍然需要将增量值更改为1 / totalQuestions * 100以反映实际的百分比变化。
希望这能解决你的问题!