개발도구/PHP,ASP,JSP,SCRIPT
[자바스크립트] 체크박스 클릭에 따라 합계가 달라지게 하기
Hay's App
2011. 8. 2. 15:42
<?
while ($row = sql_fetch_array($res)) {
$array_V_TOTALPRICE[] = $row['V_TOTALPRICE'];
$array_V_AFFILIATE[] = $row['V_AFFILIATE'];
}
//echo count($array_V_AFFILIATE);
$temp1 = count($array_V_AFFILIATE);
$checked1 = "chk[0].checked";
$checked2 = "chk[1].checked";
$checked3 = "chk[2].checked";
if ($temp1 == "2"){
$array_V_TOTALPRICE[2] = "0";
$checked3 = "chk.checked";
}
if ($temp1 == "1"){
$array_V_TOTALPRICE[1] = "0";
$array_V_TOTALPRICE[2] = "0";
$checked1 = "chk.checked";
$checked2 = "chk.checked";
$checked3 = "chk.checked";
}
?>
<SCRIPT LANGUAGE="JavaScript">
// chechbox 반드시 체크 되야 함, 체크박스 checkbox 필수사항
function getCheckpilsu()
{
var LoopCount = <?=$temp1?>; // 루프 갯수
var k = 0;
var loopName = document.getElementsByName('itemid'); // radio 버튼 네임
for (i = 0 ; i < LoopCount ; i++ ){
if (loopName[i].checked == true)
{
k = k+1;
}
}
if (k == 0 ){
alert("상품을 선택하여 주세요.");
return;
}
}
// 체크박스 한개가 클릭(동기화 되면)되면 다른 한개는 비동기화 시키기
function checkBoxValidate(cb) {
alert(cb);
for (j = 0; j < document.f.itemid.length; j++) {
if (eval("document.f.itemid[" + j + "].checked") == true) {
document.f.itemid[j].checked = false;
if (j == cb) {
document.f.itemid[j].checked = true;
}
}
}
}
//
function getTotalPrice(chkU)
{
var chkU = Number(chkU); // 스크립트 숫자형
var totalprice_1 = Number(tprice.innerHTML);
var f = document.f;
var chk = f.itemid;
var opt = f.opt;
var totalprice = 0;
var totalprice = Number(0);
if (chkU == "" )
{
// window.open();
}
else
{
// check box 가 3개 이하로 나올경우 에러가 나서 checked1, 2,3 으로 변수를 지정해줬다.
if (<?=$checked1?> == true) {
totalprice = totalprice + <?=$array_V_TOTALPRICE[0]?>;
}
if (<?=$checked2?> == true ) {
totalprice = totalprice + <?=$array_V_TOTALPRICE[1]?>;
}
if (<?=$checked3?> == true) {
totalprice = totalprice + <?=$array_V_TOTALPRICE[2]?>;
}
f.totalprice.value = totalprice;
tprice.innerHTML = totalprice;
}
}
</script>
$temp = count($array_V_AFFILIATE);
for ($i=0; $i< $temp; $i++) {
<input type="checkbox" name="itemid" onClick="getTotalPrice(<?=$temp?>);"/>