이 함수가 있지만 문제가 있습니다.자바 스크립트 계산 문제
function calc(id)
{
var price = document.getElementById("hidden-output-"+id);
var amount = document.getElementById("input-"+id);
if(price.value=="")
{
price.value = 0;
}
if(b.value=="")
{
amount.value = 1;
}
var total = amount.value * price.value;
document.getElementById("output-"+id).value=total;
}
효과가 없으며 왜 내가 새 JavaScript인지 알지 못합니다.
이
은 HTML과 PHP<?php
foreach($category->fetch_category() as $data){
$id = $data->id;
echo"<tr>";
echo"<td>";
echo"<center>";
echo"<input type=\"hidden\" value=\"$data->id\" />";
echo"<p><strong>".$data->cat_name."</strong></p>";
echo"</center>";
echo"</td>";
echo"<td>";
echo"<center>";
echo"<select>";
foreach($products->fetch_products($id) as $product)
{
$price = $product->price;
echo"<option value = $product->id onclick=\"UpdateRecord($product->id,$data->id)\">$product->p_name</option>";
}
echo"</select>";
echo"</center>";
echo"</td>";
echo"<td>";
echo"<center>";
echo"<input class=\"input-mini\" id=input-$data->id onkeyup=\"calc($data->id)\" type=\"text\" value=\"1\"/>";
echo"<input type=\"hidden\" id=\"$product->id\" value=\"$product->quantity\" />";
echo"</center>";
echo"</td>";
$i = 0;
foreach($products->fetch_products($id) as $pricer){
if ($i==1) break;
echo"<td>";
echo"<center>";
echo("<div id=\"output-$data->id\" ><p>$pricer->price</p></div>");
echo"<input type=\"hidden\" id=\"hidden-output-$data->id\" value=\"$pricer->price\"/>";
echo"</center>";
echo"</td>";
$i++;
}
echo"</tr>";
}
?>
내가 * 가격은 그 다음 나는 또한 시도
<td>Total : <input class="span1" type="text" id="total_calc" readonly="true" /></td>
모든 가격 필드 및 디스플레이 결과를 요약하면 각 필드 양의 가격을 계산하는 triyng하고있다 이러한 변형 :이 프로젝트
function calc3(id) {
var price = document.getElementById('hidden-output-'+id);
var numberField = document.getElementById('input-'+id);
numberField.onkeyup = numberField.onpaste = function() {
if(this.value.length == 0) {
document.getElementById('output-'+id).innerHTML = '';
return;
}
var number = parseInt(this.value);
if(isNaN(number)) return;
document.getElementById('output-'+id).innerHTML = number * price;
};
numberField.onkeyup();
};
// This one always return NaN
: http://tinypic.com/view.php?pic=34473mp&s=5
옵션 라인
if(isNaN(number)) return;
다음 수정해야합니다. – epascarello이들은 두 가지 다른 함수입니다 onclick = "UpdateRecord"not calc() –
IE에서 이것을 테스트 해 보셨습니까? [그러므로 위의 내 코멘트 ...] (http://stackoverflow.com/questions/9972280/onclick-on-option-tag-not-working-on-ie-and-chrome) – epascarello