Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/438.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript弹出/警报_Javascript_Forms - Fatal编程技术网

Javascript弹出/警报

Javascript弹出/警报,javascript,forms,Javascript,Forms,我有一个表格,我想让用户确认他们的订单是正确的。我用这种方式得到两个弹出窗口,只需要一个弹出窗口总结订单并提示确认消息。 当用户单击“确定”时,弹出窗口关闭并返回表单以供提交,此时会出现“提交”按钮。但是,如果用户单击“取消”,则表单将重置并关闭弹出窗口。 感谢您的帮助。非常感谢。 注意:这是评估的一部分,即使有更好的方法,也需要这样做 //JavaScript文档 function display() { var x=document.confirm.qty.value; v

我有一个表格,我想让用户确认他们的订单是正确的。我用这种方式得到两个弹出窗口,只需要一个弹出窗口总结订单并提示确认消息。 当用户单击“确定”时,弹出窗口关闭并返回表单以供提交,此时会出现“提交”按钮。但是,如果用户单击“取消”,则表单将重置并关闭弹出窗口。 感谢您的帮助。非常感谢。 注意:这是评估的一部分,即使有更好的方法,也需要这样做

//JavaScript文档

function display() {
    var x=document.confirm.qty.value; 
    var y=document.confirm.price.value; 
    var z=document.confirm.total.value;
    alert("Quantity:"+x+" \n "+"Price Each:"+y+" \n "+"Total Price:"+z );  

    if(confirm('Confirm your order?'));
}
应该是

return confirm('...

进一步确保onclick在HTML中的方法名称前面有return。

弹出窗口在这个用例中非常少见。创建一个覆盖整个站点的div,使所有其他内容都不可访问。在该div中创建另一个div,该div位于您请求确认的中心。

您实际上在寻找。该对话框显示两个按钮:确定和取消。它还返回一个布尔值,指示选择了“确定”还是“取消”

假设您的显示函数是一个onSubmit处理程序,您可以这样重写它:

function display(event) {
    var x = document.querySelector('[name="qty"]'),
        y = document.querySelector('[name="price"]'),
        z = document.querySelector('[name="total"]');

    // Simplified string creation with ES6 String Interpolation
    var confirm = window.confirm(`
        Quantity: ${x.value}
        Price Each: ${y.value}
        Total Price: ${z.value}
    `);

    if (confirm == true) {
        // All OK
        return;
    } else {
        // Blocking default `submit` event
        event.preventDefault();

        // Resetting form
        x.value = null;
        y.value = null;
        z.value = null;

        return;
    }
}
不要忘记将事件传递给回调:

<form onsubmit="display(event);">

我想你想要这样的东西:

function display()
{
    var x = document.getElementById('qty').value; 
    var y = document.getElementById('price').value; 
    var z = document.getElementById('total').value;

    var result = confirm('Quantity:' + x + '\nPrice Each: ' + y + '\nTotal Price: ' + z + '\n\nConfirm your order?');
    if(result)
    {
        // user has pressed OK
    }
    else
    {
        // user has pressed cancel
    }
}

你能把表格的标记也包括进去吗?不知道你的意思是什么?我还在学习,所以希望我不要听起来像个哑巴。我真的很感激你的帮助。谢谢确认订单我有一个确认订单按钮。提交是分开的,你能把html标记也添加到问题中吗?无论如何,无论您在哪里调用displayevent;,其主要思想都是相同的;。那也可能是另一个按钮。