【问题标题】:Change the text of submit button when clicked OKAY on alert pop-up在弹出警报时单击 OKAY 更改提交按钮的文本
【发布时间】:2019-07-19 19:22:48
【问题描述】:

我有一个购物车系统,客户可以在其中接受订单并检查他们的购物车中是否有任何东西,但如果没有,则无法继续。

如果他们点击提交按钮,将会弹出一个警报。我有那个 javascript。

function validateForm()
{
var x=document.forms["form1"]["total"].value;
if (x==null || x=="")
  {
  alert("Take your order first.");
  return false;
  }
var con = confirm("Are you sure you want to order this item/s?");
if (con ==false)
{
return false;
}
}

如何在弹出消息中点击Okay时更改提交按钮的文本?当客户添加一次订单时,我希望将其更改为“更新订单”,而不是“添加订单”。

【问题讨论】:

  • 请不要测试布尔值的真假return confirm("Are you sure you want to order this item/s?");

标签: javascript button submit confirmation


【解决方案1】:

你是说这个吗?

document.getElementById("myForm").addEventListener("submit",function(e) {
  var x = this.total.value.trim(), sure = false;
  if (this.subBut.value=="Update order" && x !=="") return true;
  e.preventDefault();
  if (x == "") {
    alert("Please take your order first.");
  }
  else sure =  confirm("Are you sure you want to order this item/s?");
  if (sure) {
    this.subBut.value="Update order";
  }
  return sure;
});
<form id="myForm">
<input type="text" name="total" value="" />
<input type="submit" name="subBut" value="Add order" />
</form>

【讨论】:

  • 完美运行!谢谢先生!
【解决方案2】:

当然,这不是最好的解决方案,因为我们看不到所有代码,但如果我理解正确的话

function validateForm(){
    var x=document.forms["form1"]["total"].value;
    if (x==null || x==""){
        alert("Take your order first.");
        return false;
    }
    var con = confirm("Are you sure you want to order this item/s?");
    if (con ==false){
        return false;
    } else {
        var submittBtn = document.forms["form1"][your_button_name];
        submittBtn.txt = "Update order"; 
    }
}

请注意,当您重置表单或客户删除他的订单时,您需要将按钮文本更改回来。

【讨论】:

    猜你喜欢
    • 2016-09-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-03
    • 2015-10-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多