0

こんにちは私は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>
4

5 に答える 5

2

そのはず:

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>
于 2012-09-11T10:29:33.063 に答える
0

変更してみてください

function getConfirmation(var value1)

function getConfirmation(value1)
于 2012-09-11T10:29:39.390 に答える
0

varキーワードを関数パラメーターとして使用することはできません。

これを試して

function getConfirmation(value1){

  //Your function

}
于 2012-09-11T10:30:38.230 に答える
0

まず、このようにボタンコードから関数を呼び出します

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>
于 2012-09-11T10:38:08.877 に答える
0

コードには2つの問題があると思います。

  1. var関数からを削除します
    function getConfirmation(value1)

  2. このコードonclick=\"getConfirmation(".$row1['pop_code'].");\"は、$ row1 ['pop_code')の整数値、つまりgetConfirmation(10)に適切なコードを作成しますが、コードがテキストの場合、getConfirmation(test)は正しくありません。したがって、値を引用符で追加する必要があります。
    すなわちonclick=\"getConfirmation('".$row1['pop_code']."');\"

于 2012-09-11T10:45:28.977 に答える