我这里有一个代码...我想要的是立即计算总数并在文本框中显示而不点击操作按钮。
代码:
<?php
include('include/connect.php');
if(isset($_POST['enter']))
{
$name = $_POST['name'];
$score1 = $_POST['optA'];
$score2 = $_POST['optB'];
$score3 = $_POST['optC'];
$score4 = $_POST['optD'];
$total1 = $_POST['total'];
$total = ($score1 + $score2 + $score3 + $score4);
mysql_query("INSERT INTO score (name,score1,score2,score3,score4,total) VALUE ('$name','$score1','$score2','$score3','$score4','$total')");
echo "succesful";
}
else
{
echo "you fail to execute!";
}
?>
代码:
<form method="post" action="index.php">
<input type="text" name="name" />
<input type="radio" name="optA" value="1" />1
<input type="radio" name="optA" value="2" />2
<input type="radio" name="optA" value="3" />3<br>
<input type="radio" name="optB" value="1" />1
<input type="radio" name="optB" value="2" />2
<input type="radio" name="optB" value="3" />3<br>
<input type="radio" name="optC" value="1" />1
<input type="radio" name="optC" value="2" />2
<input type="radio" name="optC" value="3" />3<br>
<input type="radio" name="optD" value="1" />1
<input type="radio" name="optD" value="2" />2
<input type="radio" name="optD" value="3" />3
<input type="text" name="total" value="<?php echo $total ?>" />
<input type="submit" value="enter" name="enter" />
</form>
答案 0 :(得分:0)
PHP在内容到达浏览器之前执行,因此不会加载任何元素,因此您无法访问它们。它是服务器端语言,而不是客户端; 因此您无法执行此操作。 客户端的示例是 Javascript。但是,您可以创建 HTML元素并设置其属性,然后echo
它在页面上。
答案 1 :(得分:-1)
您必须以某种形式使用JavaScript,而不必将答案发回服务器并等待回复。
以下是如何在JQuery中执行此操作。
function calculateTotal() {
var total = 0;
$('form input:radio:checked').each(function () {
total = total + parseInt($(this).val());
});
$('form [name=total]').val(total);
return false;
}
在您的HTML中,您需要将提交按钮更改为其他类似内容:
<span onclick="calculateTotal()">Enter</span>