没有所有默认类的jQuery UI对话框按钮?

时间:2014-06-10 17:56:29

标签: javascript jquery jquery-ui

我正在以编程方式创建一个jQuery UI对话框,如

$( "#dialog" ).dialog({
        autoOpen: false,
        width: 400,
        buttons: [
            {
                class: "myButton",
                text: "Ok",
                click: function() {
                    $( this ).dialog( "close" );
                }
            },
            {
                text: "Cancel",
                click: function() {
                    $( this ).dialog( "close" );
                }
            }
        ]
    });

然而,当创建对话框时,该按钮具有分配给它的默认类列表,并且标签包装在SPAN中。

<button type="button" class="myButton ui-button ui-widget ui-state-default ui-corner-all ui-button-text-only" role="button" aria-disabled="false">
     <span class="ui-button-text">Ok</span>
 </button>

我更喜欢按钮只有myClass,句号,如果可能的话,没有span。如:

 <button type="button" class="myButton">Ok</button>

我该如何做到这一点?

2 个答案:

答案 0 :(得分:0)

有3种简单的方法可以实现此目的:(只需使用以下其中一项)

1只需在代码中将该按钮创建为html字符串:

EX:$("#someelem").html("<button type=\"button\" id=\"myid\" class=\"myclass\">Ok</button>");

2下载非压缩的jQuery UI并更改代码,以便输出只是您传递的类,并且不会向html添加跨度。

EX FROM jQuery UI代码:

var buttonElement = this.buttonElement.removeClass( typeClasses ),
            buttonText = $( "<span></span>", this.document[0] )
                .addClass( "ui-button-text" )
                .html( this.options.label )
                .appendTo( buttonElement.empty() )
                .text(),
            icons = this.options.icons,
            multipleIcons = icons.primary && icons.secondary,
            buttonClasses = [];

只需删除span标记,以便buttonText = this.options.label;或类似的东西。

3创建后用JavaScript更改类和按钮html。 EX:$(".myButton").attr("class","myButton").html("Ok");

答案 1 :(得分:0)

['311102Z', '5663.00N', '00813.02E', 'GPS', '', '03', '-']

可以使用“创建”功能代替“打开”功能