Я пытаюсь умножить значения в двух текстовых полях и поместить их на третье текстовое поле … Использование javascript и php while loop with onclick event ….. Как это сделать? мой код
<script language="javascript"> function multiply() { var textValue1 = document.getElementById('CLS').value; var textValue2 = document.getElementById('rate').value; document.getElementById('valuation').value = textValue1 * textValue2; } </script> <?php $a="some query"; $b=mysql_query($a); while($c=mysql_fetch_array($b)) { echo "<td>".$CLOSINGstk."</td> <input type='hidden' name='CLOSINGstk".$a."' value='".$CLOSINGstk."' id='CLS".$a."'>"; echo "<td><input type='text' name='rate".$a."' id='rate".$a."'></td>"; echo "<td><input type='text' name='valuation".$a."' id='valuation".$a."' onclick='multiply();'></td>"; } ?>
<script language="javascript"> function multiply(arg_id) { var textValue1 = document.getElementById('CLS'+arg_id).value; var textValue2 = document.getElementById('rate'+arg_id).value; document.getElementById('valuation'+arg_id).value = textValue1 * textValue2; } </script> <?php $a="some query"; $b=mysql_query($a); while($c=mysql_fetch_array($b)) { echo "<td>".$CLOSINGstk."</td> <input type='hidden' name='CLOSINGstk".$a."' value='".$CLOSINGstk."' id='CLS".$a."'>"; echo "<td><input type='text' name='rate".$a."' id='rate".$a."'></td>"; echo "<td><input type='text' name='valuation".$a."' id='valuation".$a."' onclick='multiply(".$a.");'></td>"; } ?>
в<script language="javascript"> function multiply(arg_id) { var textValue1 = document.getElementById('CLS'+arg_id).value; var textValue2 = document.getElementById('rate'+arg_id).value; document.getElementById('valuation'+arg_id).value = textValue1 * textValue2; } </script> <?php $a="some query"; $b=mysql_query($a); while($c=mysql_fetch_array($b)) { echo "<td>".$CLOSINGstk."</td> <input type='hidden' name='CLOSINGstk".$a."' value='".$CLOSINGstk."' id='CLS".$a."'>"; echo "<td><input type='text' name='rate".$a."' id='rate".$a."'></td>"; echo "<td><input type='text' name='valuation".$a."' id='valuation".$a."' onclick='multiply(".$a.");'></td>"; } ?>
просто передайте параметр как id из всех CLS,RATE,VALUATION
дайте мне знать, я могу вам помочь.
Попробуйте это
while($c=mysql_fetch_array($b)) { echo "<td> <input type='text' name='valuation".$c['id']."' id='valuation".$c['id']."' onkeypress='multiply(".$c['id'].");'> //Let you want to pass id from DB </td>";
или вы можете использовать
onkeypress='multiply('.$c['id'].')'
ИСПОЛЬЗУЙТЕ onkeypress вместо onclick () и в вашем скрипте
function multiply(id) { var textValue1 = document.getElementById('CLS'+id).value; var textValue2 = document.getElementById('rate'+id).value; document.getElementById('valuation'+id).value = textValue1 * textValue2; }
И старайтесь избегать функций mysql_ *, поскольку они лишены, вместо этого используйте либо mysqli_ * функции, либо инструкции PDO