一个积分给予效果 if(tx1.value * 5 +tx2.value * 5 + tx3.value * 4 > 76){alert(!)} 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 <script> function validate(){ var count = document.getElementById('one').value * 5 + document.getElementById('two').value * 15 + document.getElementById('three' ).value * 8; var total = document.getElementById('total').lastChild.nodeValue; if(total >= count){ total -= count; document.getElementById('total').lastChild.nodeValue = total; } if(total < count){ document.getElementById('one').value = 0; document.getElementById('two').value = 0; document.getElementById('three').value = 0; alert("超了"); } }</script><table> <tr> <th>奖品</th> <th>数量</th> <th>积分</th> <th>剩余积分</th> </tr> <tr> <td>奖品1</td> <td><input type="text" id="one" value="0" onchange="validate()"/></td> <td>5</td> <td id="total" rowspan="3" >76</td> </tr> <tr> <td>奖品2</td> <td><input type="text" id="two" value="0" onchange="validate()"/></td> <td>15</td> </tr> <tr> <td>奖品3</td> <td><input type="text" id="three" value="0" onchange="validate()" /></td> <td>8</td> <td></td> </tr></table> 生成对应的table id 和input就行了<script> var total=0;function validate(){ var tb = document.getElementById("objtb"); var input = tb.getElementsByTagName("input"); var prize = new Array(); var price = new Array(); for(var i=0;i<input.length;i++ ) { if(input[i].type=="text" && input[i].name=="prize") { input[i].value = input[i].value.replace(/[^\d]/g,""); prize.push(input[i].value==""?0:input[i].value); } else if(input[i].type=="hidden" && input[i].name=="price") { input[i].value = input[i].value.replace(/[^\d]/g,""); price.push(input[i].value==""?0:input[i].value); } } if(total == 0) total = document.getElementById("total").innerHTML; var count = 0; for(var i=0;i<prize.length ;i++ ) { count += prize[i]*(price[i]==""?0:price[i]) } if(total-count<0) { alert("积分不够"); for(var i=0;i<input.length;i++ ) { if(input[i].type=="text" && input[i].name=="prize") input[i].value = ""; } document.getElementById("total").innerHTML=total; } else document.getElementById("total").innerHTML=total-count;}</script> <table id="objtb"> <tr> <th>奖品 </th> <th>数量 </th> <th>积分 </th> <th>剩余积分 </th> </tr> <tr> <td>奖品1 </td> <td><input type="text" name="prize" value="" onkeyup="validate()"/></td> <td><input type="hidden" name="price" value="5">5</td> <td rowspan="3" ><span id="total">76</span></td> </tr><tr> <td>奖品2</td> <td><input type="text" name="prize" value="" onkeyup="validate()"/></td> <td><input type="hidden" name="price" value="15">15</td> </tr> <tr> <td>奖品3 </td> <td><input type="text" name="prize" value="" onkeyup="validate()"/></td> <td><input type="hidden" name="price" value="8">8</td> <td> </td> </tr> </table> js怎么获得服务器和客户端的时间差(貌似不可行。) 一个很莫明的小问题 麻烦帮忙看下 用javascript 怎么比较二个时间大小啊 选择框导入,导出,十万火急,搞不好要被炒鱿鱼了? 怎样改变某一连接的onclick事件事src? 怎样得到一个页面里iframe的个数? JS新人问题:关于内置的事件处理函数 怎么样判断textarea的值为空,在Javascript里面 如何用setTimeout 实现下面这种计时的功能。 两个js有冲突,放在一起就有一个功能不能实现 关于JavaScript编辑器 如何用JS隐藏打开的页面?
function validate(){
var count = document.getElementById('one').value * 5 + document.getElementById('two').value * 15 + document.getElementById('three' ).value * 8;
var total = document.getElementById('total').lastChild.nodeValue;
if(total >= count){
total -= count;
document.getElementById('total').lastChild.nodeValue = total;
}
if(total < count){
document.getElementById('one').value = 0;
document.getElementById('two').value = 0;
document.getElementById('three').value = 0;
alert("超了");
}
}
</script>
<table>
<tr>
<th>奖品</th>
<th>数量</th>
<th>积分</th>
<th>剩余积分</th>
</tr>
<tr>
<td>奖品1</td>
<td><input type="text" id="one" value="0" onchange="validate()"/></td>
<td>5</td>
<td id="total" rowspan="3" >76</td>
</tr>
<tr>
<td>奖品2</td>
<td><input type="text" id="two" value="0" onchange="validate()"/></td>
<td>15</td>
</tr>
<tr>
<td>奖品3</td>
<td><input type="text" id="three" value="0" onchange="validate()" /></td>
<td>8</td>
<td></td>
</tr>
</table>
var total=0;
function validate()
{
var tb = document.getElementById("objtb");
var input = tb.getElementsByTagName("input");
var prize = new Array();
var price = new Array();
for(var i=0;i<input.length;i++ )
{
if(input[i].type=="text" && input[i].name=="prize")
{
input[i].value = input[i].value.replace(/[^\d]/g,"");
prize.push(input[i].value==""?0:input[i].value);
}
else if(input[i].type=="hidden" && input[i].name=="price")
{
input[i].value = input[i].value.replace(/[^\d]/g,"");
price.push(input[i].value==""?0:input[i].value);
}
}
if(total == 0)
total = document.getElementById("total").innerHTML;
var count = 0;
for(var i=0;i<prize.length ;i++ )
{
count += prize[i]*(price[i]==""?0:price[i])
}
if(total-count<0)
{
alert("积分不够");
for(var i=0;i<input.length;i++ )
{
if(input[i].type=="text" && input[i].name=="prize")
input[i].value = "";
}
document.getElementById("total").innerHTML=total;
}
else
document.getElementById("total").innerHTML=total-count;
}
</script>
<table id="objtb">
<tr>
<th>奖品 </th>
<th>数量 </th>
<th>积分 </th>
<th>剩余积分 </th>
</tr>
<tr>
<td>奖品1 </td>
<td><input type="text" name="prize" value="" onkeyup="validate()"/></td>
<td><input type="hidden" name="price" value="5">5</td>
<td rowspan="3" ><span id="total">76</span></td>
</tr>
<tr>
<td>奖品2</td>
<td><input type="text" name="prize" value="" onkeyup="validate()"/></td>
<td><input type="hidden" name="price" value="15">15</td>
</tr>
<tr>
<td>奖品3 </td>
<td><input type="text" name="prize" value="" onkeyup="validate()"/></td>
<td><input type="hidden" name="price" value="8">8</td>
<td> </td>
</tr>
</table>