在jQuery确认框中添加Yes和No按钮

时间:2012-01-13 10:43:07

标签: javascript jquery jquery-ui

我想"是"和"不"不使用jQuery UI对话框的确认框上的按钮。

有办法做到这一点吗?

5 个答案:

答案 0 :(得分:7)

jQuery UI Dialog是一个非常灵活和强大的工具。以下是如何询问用户是否要删除某些内容的示例:

<div id="dialog_box" style="display: none;">
    Really delete?
</div>
<button class="delete_btn">Delete</button>

<script>
$('.delete_btn').click(function(){
$('#dialog_box').dialog({
  title: 'Really delete this stuff?',
  width: 500,
  height: 200,
  modal: true,
  resizable: false,
  draggable: false,
  buttons: [{
  text: 'Yep, delete it!',
  click: function(){
      //delete it
    }
  },
  {
  text: 'Nope, my bad!',
  click: function() {
      $(this).dialog('close');
    }
  }]
});
});

</script>

<强> //编辑:

很抱歉,从您的原始问题中不太清楚您不想使用jQuery对话框(但为什么用jquery / jquery-ui标记问题呢?)。

AFAIK,没有其他方法可以完成你想做的事。另外,请记住,本机JavaScript对话框的文本也会考虑浏览器语言和其他本地因素。因此,解决这个问题可能并不总是一个好主意。

答案 1 :(得分:6)

嗯,是的,没有(没有双关语)。你可以用这个:

if (confirm("Would you like an alert?")) {
    alert("Here you go!");
}

如果用户按下“确定”, confirm function 将返回true,如果按下“取消”,则会返回false。这是纯JavaScript(DOM级别0),因此所有浏览器都支持此

但据我所知,无法自定义按钮的标签。因此,如果设置为英语,您将无法使用默认设置(“取消”和“确定”)。

答案 2 :(得分:5)

不,您无法更改Javascript标准确认框按钮。

我建议您使用Jquery UI dialog

答案 3 :(得分:2)

你可以这样做,但仅限于IE:Javascript Confirm popup Yes, No button instead of OK and Cancel AFAIK其他浏览器不支持

<script language="javascript">
    function window.confirm(str) {
        execScript('n = msgbox("' + str + '","4132")', "vbscript");
        return (n == 6);
    }
</script>

如果你不想要jQueryUI,但想到一个插件 - 试试http://www.abeautifulsite.net/blog/2008/12/jquery-alert-dialogs/#demo(在链接的答案中也提到)

答案 4 :(得分:1)

您无法更改确认框文字,但您可以创建自己的文本。

见这里的例子: - Display Yes and No buttons instead of OK and Cancel in Confirm box?

我想你会明白自定义确认框。