打开jQuery ui对话框时如何隐藏对话框按钮
打开jQuery UI对话框时,如何隐藏按钮?例如,隐藏保存按钮 //javascript $document.readyfunction{ $“打开”。单击函数{ $dialog.dialogopen; }; $dialog.dialog{ 自动打开:错误, 身高:400, 宽度:350, 莫代尔:是的, 开放:功能{ var dialog=$this; console.log'dialog',dialog; 变量按钮=dialog.dialogoption,按钮; 控制台。日志“按钮”,按钮; //这样改名字。。。 按钮[0]。文本='Save2'; 按钮[1]。文本='Cancel2'; dialog.dialogoption,按钮,按钮; //如何隐藏按钮,即隐藏保存按钮? }, 按钮:[{ 文本:“保存”, 单击:函数{ 警报“保存”; $this.dialogclose; } }, { 文本:“取消”, 单击:函数{ $this.dialogclose; } }] }; };打开jQuery ui对话框时如何隐藏对话框按钮,jquery,jquery-ui,jquery-ui-dialog,Jquery,Jquery Ui,Jquery Ui Dialog,打开jQuery UI对话框时,如何隐藏按钮?例如,隐藏保存按钮 //javascript $document.readyfunction{ $“打开”。单击函数{ $dialog.dialogopen; }; $dialog.dialog{ 自动打开:错误, 身高:400, 宽度:350, 莫代尔:是的, 开放:功能{ var dialog=$this; console.log'dialog',dialog; 变量按钮=dialog.dialogoption,按钮; 控制台。日志“按钮”,按钮
我只是给按钮添加了一个id,并更新了click函数来隐藏它
$(document).ready(function () {
$('#open').click(function () {
$("#dialog").dialog("open");
$("#save").hide();
});
$("#dialog").dialog({
autoOpen: false,
height: 400,
width: 350,
modal: true,
open: function () {
var dialog = $(this);
console.log('dialog', dialog);
var buttons = dialog.dialog("option", "buttons");
console.log('buttons', buttons);
//Change names this way...
buttons[0].text = 'Save2';
buttons[1].text = 'Cancel2';
dialog.dialog("option", "buttons", buttons)
//How do I hide a button (i.e. hide Save button)?
},
buttons: [{
text: 'SAVE',
id: "save",
click: function () {
alert('save');
$(this).dialog("close");
}
}, {
text: 'CANCEL',
click: function () {
$(this).dialog("close");
}
}]
});
});
我只是给按钮添加了一个id,并更新了click函数来隐藏它
$(document).ready(function () {
$('#open').click(function () {
$("#dialog").dialog("open");
$("#save").hide();
});
$("#dialog").dialog({
autoOpen: false,
height: 400,
width: 350,
modal: true,
open: function () {
var dialog = $(this);
console.log('dialog', dialog);
var buttons = dialog.dialog("option", "buttons");
console.log('buttons', buttons);
//Change names this way...
buttons[0].text = 'Save2';
buttons[1].text = 'Cancel2';
dialog.dialog("option", "buttons", buttons)
//How do I hide a button (i.e. hide Save button)?
},
buttons: [{
text: 'SAVE',
id: "save",
click: function () {
alert('save');
$(this).dialog("close");
}
}, {
text: 'CANCEL',
click: function () {
$(this).dialog("close");
}
}]
});
});
最简单的*方法是获取当前对话框的元素,并找到其中的按钮:
open: function () {
var $widget = $(this).dialog("widget");
$widget.find(".ui-dialog-buttonpane button:first").hide();
}
比查找页面上的所有按钮元素并猜测其中一个更容易。最简单的*方法是抓住当前对话框的元素并单击。查找其中的按钮:
open: function () {
var $widget = $(this).dialog("widget");
$widget.find(".ui-dialog-buttonpane button:first").hide();
}
比在页面上查找所有按钮元素并猜测哪个是哪个更容易。谢谢jroot,但出于维护目的,我想将其隐藏在对话框脚本中。另外,我不想向按钮添加ID。感谢jroot,但出于维护目的,我想将其隐藏在对话框脚本中。而且,我不想在按钮上添加ID。啊,我明白了。非常感谢。奇怪的是,为什么不能操纵button对象这样做呢?buttons对象并没有引用对话框中的HTML按钮。它指的是用于生成或重新生成按钮的选项。明白了!再次感谢您,您是否也可以像我那样使用小部件更改名称?您可以,但我不确定。如果您直接更改按钮的文本,实际上是其中跨距的文本,$.dialog.dialogoption,按钮[0]。文本将包含一个现在不同步的值。啊,我明白了。非常感谢。奇怪的是,为什么不能操纵button对象这样做呢?buttons对象并没有引用对话框中的HTML按钮。它指的是用于生成或重新生成按钮的选项。明白了!再次感谢您,您是否也可以像我那样使用小部件更改名称?您可以,但我不确定。如果直接更改按钮的文本,实际上是更改按钮内跨距的文本,$.dialog.dialogoption,按钮[0]。文本将包含一个现在不同步的值。