我正试图将一个参数传递给JavaScript函数getConfirmation()
,我的代码如下。根本不执行对函数的调用。所以我想我打电话是不对的。请帮帮我。
<html>
<head>
<script type="text/javascript">
<!--
function getConfirmation(var value1)
{
var retVal = confirm("Pop Code:" + value1 + "'n" + "Amount:" + "" + "'n" + "Updated Balance:" + "" + "'nPlease confirm!");
if( retVal == true )
{
alert("User wants to continue!");
return true;
}else{
alert("User does not want to continue!");
return false;
}
}
//-->
</script>
<body>
<div align="center" style="width:100%; margin: 0px auto;">
<div align="center" style="width:100%; margin: 0px auto; background-color:f0f0f0">
<div id="child" style=" align="center" style="width:100%; margin:0px auto;" >
<div style=" right:5%; top:5%; z-index: 100; position:absolute;">
</div>
<img src = "images/header.png" width ="100%" />
</div>
</div>
<div align="center">
<?php
require 'config.php';
mysql_connect ($dbhost, $dbusername, $dbuserpass);
mysql_select_db($dbname) or die('Cannot select database');
$query = "SELECT * FROM cust_info;";
$result = mysql_query($query) or die(mysql_error());
echo "</br>";
echo "<table border='1'>
<tr>
<th>Pop Code</th>
<th>Open_Date</th>
<th>Maturity_Date</th>
<th>Amount</th>
<th>Balance</th>
<th>Col Amount</th>
</tr>";
while($row1 = mysql_fetch_array($result))
{
if ($row1['status'] == 'DONE')
{
continue;
}
echo "<div class='"addform'"><form method='post' action='"txn.php'">'n";
echo "<tr>";
echo "<td><input type='hidden' name='pop_code' value='".$row1['pop_code']."'>" . $row1['pop_code'] . "</td>";
echo "<td><input type='hidden' name='open_date' value='".$row1['open_date']."'>" . $row1['open_date'] . "</td>";
echo "<td><input type='hidden' name='mat_date' value='".$row1['mat_date']."'>" . $row1['mat_date'] . "</td>";
echo "<td><input type='hidden' name='depoamt' value='".$row1['depoamt']."'>" . $row1['depoamt'] . "</td>";
echo "<td><input type='hidden' name='balance' value='".$row1['balance']."'>" . $row1['balance'] . "</td>";
echo "<td>" . " <input type='"text'" name='"amount'"/>'n" . "</td>";
//echo "<td>" . "<input type='"button'" value='"Make Entry'" onclick='"getConfirmation();'"" . "</td>";
echo "<td>" . " <input type='"image'" src='"images/update.png'" onclick='"getConfirmation(".$row1['pop_code'].");'" alt='"Update Row'" class='"update'" title='"Update Row'">'n" . "</td>";
echo "</tr>";
echo "</form></div>";
}
echo "</table>";
?>
<div align="center" style="width:100%; margin: 0px auto;">
<img src="images/footer.png" style="width:100%;"/>
</div>
</div>
</body>
</html>
应该是:
function getConfirmation(value1){
和形式:
echo "<div class='"addform'"><form method='post' action='"txn.php'" onsubmit='"return getConfirmation('".$row1['pop_code']."');'">";
并且您可以在不调用任何javascript的情况下保留提交图像。
最终代码:
echo "<div class='"addform'"><form method='post' action='"txn.php'" onsubmit='"return getConfirmation('".$row1['pop_code']."',this,'".$row1['balance']."');'">'n";
echo "<tr>";
echo "<td><input type='hidden' name='pop_code' value='".$row1['pop_code']."'>" . $row1['pop_code'] . "</td>";
echo "<td><input type='hidden' name='open_date' value='".$row1['open_date']."'>" . $row1['open_date'] . "</td>";
echo "<td><input type='hidden' name='mat_date' value='".$row1['mat_date']."'>" . $row1['mat_date'] . "</td>";
echo "<td><input type='hidden' name='depoamt' value='".$row1['depoamt']."'>" . $row1['depoamt'] . "</td>";
echo "<td><input type='hidden' name='balance' value='".$row1['balance']."'>" . $row1['balance'] . "</td>";
echo "<td><input type='"text'" name='"amount'"/>'n</td>";
echo "<td><input type='"image'" src='"images/update.png'" alt='"Update Row'" class='"update'" title='"Update Row'">'n</td>";
echo "</tr>";
echo "</form></div>";
和javascript:
<script type="text/javascript">
<!--
function getConfirmation(value1,form,balance)
{
var retVal = confirm("Pop Code:" + value1 + "'n" + "Amount:" + form.amount.value + "'n" + "Updated Balance:" + balance + "'nPlease confirm!");
if( retVal == true )
{
alert("User wants to continue!");
return true;
}else{
alert("User does not want to continue!");
return false;
}
}
//-->
</script>
尝试更改
function getConfirmation(var value1)
至
function getConfirmation(value1)
不能将var
关键字用作函数参数。
试试这个
function getConfirmation(value1){
//Your function
}
首先从按钮代码中调用函数,就像这个一样
echo "<td><input type="image" src="images/update.png" onclick="getConfirmation('".$row1['pop_code']."');" alt="Update Row" class="update" title="Update Row"></td>";
当我们定义函数参数时,不需要声明变量为使用var关键字,因此之后替换您的javascript功能声明
<script type="text/javascript">
function getConfirmation(value1)
{
var retVal = confirm("Pop Code:" + value1 + "'n" + "Amount:" + "" + "'n" + "Updated Balance:" + "" + "'nPlease confirm!");
if( retVal == true )
{
alert("User wants to continue!");
return true;
}else{
alert("User does not want to continue!");
return false;
}
}
</script>
我认为代码有两个问题。
-
从函数中删除
var
function getConfirmation(value1)
-
代码
onclick='"getConfirmation(".$row1['pop_code'].");'"
将为$row1['pop_code')即getConfirmation(10)创建正确的整数值代码,但当代码为文本时,它将是不正确的getConfirmation[测试]。因此,您必须添加值的引号。
即onclick='"getConfirmation('".$row1['pop_code']."');'"