如何从jQuery UI Dialog中删除一个类?

时间:2013-05-11 01:00:32

标签: html jquery-ui jquery-dialog

jQuery UI对话框有一个添加类的选项:

http://api.jqueryui.com/dialog/#option-dialogClass

有什么方法可以从对话框中删除特定的类吗?

感谢。

1 个答案:

答案 0 :(得分:1)

只需替换课程选项

即可
// Get the existing class string
var dlgClass = $( ".selector" ).dialog("option", "dialogClass");

// remove the offending class
dlgClass.replace("delete-this-class", "");

// reset the dialog class
$(".selector").dialog("option", "dialogClass", dlgClass);

或者您可以执行split(" ")或Regex来检查分词以修改类值。

修改

我尝试使用removeClass但是小部件似乎会跟踪您单独添加的类。这似乎不起作用:

$( "#dialog" ).dialog({ autoOpen: false, dialogClass: "foo bar" });
...
$("#dialog").closest(".ui-dialog").removeClass("foo");
var dialogClass = $("#dialog").dialog("option", "dialogClass");
console.log(dialogClass);  // foo bar

无论如何,我不愿意以这种方式依赖小部件的DOM结构。