这是我的代码:
<html>
<head>
<script type="text/javascript" src="//code.jquery.com/jquery-1.11.0.js"></script>
<script type="text/javascript">//<![CDATA[
$(window).load(function(){
$(".sub").focusout(function() {
$("#answer").html('');
var num = $("#num").val();
var answer = 100 - num;
$("#answer").html(answer);
});
});//]]>
</script>
</head>
<body>
<p id='answer'> 100 </p>
<?php
$db=mysql_connect("localhost","root","") or die("Could not connect to database");
mysql_select_db("cb_client_database") or die("could not select database");
$query = "SELECT * FROM ra_rooms WHERE Category = 'Double Deluxe Room'";
$result=mysql_query($query, $db) or die(mysql_error($db));
echo "<table>";
while ($row = mysql_fetch_array($result))
{
extract($row);
?>
<tr><td><input type='number' max='<?phpecho"$Min_Capacity";?>' min='0' name='num' id=num class=sub><?phpecho"$RoomNumber";?></td></tr>
<?php
}
echo "</table>";
?>
</body>
</html>
例如:如果我有四(4)条记录(这取决于我的数据库有多少条记录),它应该再生成3个变量,所以计算应该是这样的:
var answer = 100 - (num + num2 + num3 + num4);
问题是,我不知道该怎么做。请帮帮我。
答案 0 :(得分:1)
首先,从id="num"
元素中删除<input>
(每个文档不能有多个唯一标识符)。
然后,稍微更新您的代码以计算多个元素的总和:
var num = 0;
$('input.sub').each(function() {
num += parseInt(this.value, 10);
});
var answer = 100 - num;
$("#answer").html(answer);
我已经假设"input.sub"
匹配正确的输入元素。
答案 1 :(得分:0)
1)写回声“$ RoomNumber”;在输入值。
2)对id和class输入使用双引号。
3.使用计数器检查下面的PHP代码.id输入将自动增加。
<script>
var num1 = $('#num1').val();
var num2 = $('#num2').val();
var num3 = $('#num3').val();
var num4 = $('#num4').val();
var answer = 100 - (num1+num2+num3+num4 );
</script>
<?php
$x=1;
while($x<=4) //4 or count($result)
{
?>
<tr><td><input type='number' min='0' name='num' value="<?phpecho"$RoomNumber";?>" id="num<?php echo $x;?>" class="sub"></td></tr>
<?php
$x=$x+1;
}
?>