0

我需要在 html 表单 Onsubmit() 上实现自定义确认框。我该如何实现?

像这样的东西

 <form method="post"  style="float:left" action="xxx/**"
     onsubmit="return confirmfinish()"

confirmfinish() 应该实现自定义确认框并返回适当的值(真/假)

4

5 回答 5

1

我采用了您的 FORM 标签示例并对其进行了一些调整,如下所示。这将让您进行自定义确认。它将停止提交表单,直到您在自定义确认上单击“是”。

<form id="mainForm" method="post" action="xxx/**" onsubmit="return confirmfinish();">
    <input type="text">
    <input type="submit">
</form>

<div id="confirmationDiv" style="display:none; border:1px solid black; padding:10px; margin-top:10px; width:500px;">
    Are you sure you want to submit the form?<br>
    <input type="button" value="Yes" onclick="confirmed = true; document.getElementById('mainForm').submit();">
    <input type="button" value="No" onclick="document.getElementById('confirmationDiv').style.display='none'; return false;">
</div>

<script type="text/javascript">     
    var confirmed = false;

    function confirmfinish(){
        if(!confirmed){
            document.getElementById('confirmationDiv').style.display='block';
            return false;
        } else {
            return true;
        }
    }
</script>
于 2013-02-07T05:30:31.917 回答
0

试试我根据您的代码编写的代码:

<form method="post" action="xxx/**" onsubmit="return confirmfinish();">
    <input type="text">
    <input type="submit">
</form>

<script type="text/javascript">
    function confirmfinish(){
        return confirm("Are you sure you are ready to submit the form?");
    }
</script>
于 2013-02-07T05:22:32.430 回答
0

你可以使用这样的东西。

function confirmfinish(){
     if (confirm("Your question")) { 
          // do things if OK
     }
}
于 2013-02-07T05:46:15.100 回答
0

你可以像下面这样使用jquery UI

<div id="dialog-confirm" title="Delete Country">
    <p>
        Are you soure you wont to delete this record ?</p>
</div>

<script type="text/javascript">
    $(function () {           
        $("#dialog-confirm").dialog({
            autoOpen: false,
            model: true,
            width: 300,
            resizable: false,
            height: 200
        });

        $(".lnkDelete").click(function (e) {
            e.preventDefault();
            var targeturl = $(this).attr("href");


            $("#dialog-confirm").dialog({
                buttons: {
                    "Confirm": function () {
                        window.location.href = targeturl;
                    },
                    "Cancel": function () {
                        $(this).dialog("close");
                    }
                }
            });
            $("#dialog-confirm").dialog("open");
        });
    });
</script>

我想这会对你有所帮助......

于 2013-02-07T06:02:09.683 回答
0

您可以使用 javascript 的内置支持来确认框,如下所示:

 <script type="text/javascript">
    function confirmfinish(){
       if (confirm("Are you sure you want Submit the form?") == true)
           return true;
       else 
           return false;
    }
    </script>

或者

如果您只需要为其实现自定义控件而不是 javascript 的内置支持

去头并单击jQuery Alert Dialogs (Alert, Confirm, & Prompt Replacements)的链接

为了实现 jAlert,您需要有jquery.jalerts.js文件并将以下代码添加到您的 confirmfinish()

jConfirm('Submit form?', 'Submitting the form', function(r) {
    jAlert('Confirmed: ' + r, 'Confirmation Results');
});

希望能帮助到你

于 2013-02-07T06:09:02.997 回答