0

次のような多くのフォームを表示する foreach ループを取得しました。

<form action="cree-new-user.php"  method="post" class="formButtonForm">                                                      
    <input type="hidden" name="ent" value="<?php echo $corp->id;?>" />
    <input type="hidden" name="action" value="delete" />
    <input type="submit" class="submit redform" value="delete" />
</form>

[削除] ボタンをクリックすると、データベース内のオブジェクトが削除されます。「本当に」削除するかどうかを確認するポップアップ ボックスを作成したいと思います。

これをJavascriptでコーディングしました:

function Validate(event) {

  var thereturn = confirm("Voulez vous vraiment effacer cette entreprise ?");
    if (event) {
      if (!thereturn) {
         event.preventDefault();
      }
     } else {
   return thereturn;
   }
}

window.onload = function () {                                                          
 document.getElementByName("deleteEntreprise").onclick = Validate;                
}  

警告ポップアップが表示されるはずですが、何もポップされません...手がかりはありますか?

4

2 に答える 2

1

onsubmitの代わりに使用して、このアプローチを試してくださいonclick

HTML:

<form action="cree-new-user.php"  method="post" class="formButtonForm" id="delete-form">                                                      
    <input type="hidden" name="ent" value="<?php echo $corp->id;?>" />
    <input type="hidden" name="action" value="delete" />
    <input type="submit" class="submit redform" value="delete" />
</form>

JavaScript:

function Validate(event) {
    var thereturn = confirm("Voulez vous vraiment effacer cette entreprise?");
    if (event) {
        if (!thereturn) {
            event.preventDefault();
        }
    } else {
        return thereturn;
    }
}

window.onload = function() {                                                          
    document.getElementById('delete-form').onsubmit = Validate;                
};

コード例

于 2012-11-08T17:39:27.903 に答える
1

ボタンを正しく取得した場合でも、送信イベントでフォームを検証する必要があります。

<form action="cree-new-user.php"  method="post" class="formButtonForm" onSubmit="return Validate();">

関数に戻るfalseと、フォームは送信されません。

于 2012-11-08T17:40:09.797 に答える