在确认框中显示是和否按钮而不是确定和取消?

use*_*485 11 javascript jquery

可能重复:
如何在javascript中创建是/否/取消框而不是确定/取消?

在确认消息框中,如何更改按钮以显示"是"和"否"而不是"确定"和"取消"?有没有办法使用jQuery/Javascript实现这一目标?在此先感谢您的帮助.

gil*_*ly3 13

创建自己的确认框:

<div id="confirmBox">
    <div class="message"></div>
    <span class="yes">Yes</span>
    <span class="no">No</span>
</div>
Run Code Online (Sandbox Code Playgroud)

创建自己的confirm()方法:

function doConfirm(msg, yesFn, noFn)
{
    var confirmBox = $("#confirmBox");
    confirmBox.find(".message").text(msg);
    confirmBox.find(".yes,.no").unbind().click(function()
    {
        confirmBox.hide();
    });
    confirmBox.find(".yes").click(yesFn);
    confirmBox.find(".no").click(noFn);
    confirmBox.show();
}
Run Code Online (Sandbox Code Playgroud)

通过您的代码调用它:

doConfirm("Are you sure?", function yes()
{
    form.submit();
}, function no()
{
    // do nothing
});
Run Code Online (Sandbox Code Playgroud)

您需要将CSS添加到样式并适当地定位您的确认框.

工作演示:jsfiddle.net/Xtreu

  • 此确认框不会像普通确认框那样禁用屏幕的其余部分。即使出现确认框,我也可以再次按下“删除我的数据”按钮 (2认同)
  • @ALBI - 我的 jsfiddle 的此更新添加了一个覆盖层来隐藏页面:http://jsfiddle.net/Xtreu/269/ 我使用 JavaScript 添加了覆盖层,但您也可以将其添加到 HTML 中并使用以下命令显示/隐藏它JavaScript 像这样:http://jsfiddle.net/Xtreu/270/。 (2认同)

Ric*_*d B 12

如果切换到jQuery UI对话框,则可以使用适当的名称初始化buttons数组,例如:

$("#id").dialog({
  buttons: {
    "Yes": function() {},
    "No": function() {}
  }
});
Run Code Online (Sandbox Code Playgroud)


Don*_*nut 2

不可以,无法更改该confirm功能显示的对话框中按钮的内容。您可以使用 Javascript 创建一个看起来类似的对话框。