From 9644e7bae9116edaf8d37c5b38cb32b892f10ff6 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Jo=CC=88rn=20Zaefferer?= Date: Wed, 28 Oct 2015 19:11:07 +0100 Subject: [PATCH] Dialog: Escape closeText option before passing it to button Ref gh-1632 Fixes jquery/api.jqueryui.com#281 --- tests/unit/dialog/options.js | 7 ++++++- ui/widgets/dialog.js | 4 ++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/tests/unit/dialog/options.js b/tests/unit/dialog/options.js index 6d3a619bd..ab9ace259 100644 --- a/tests/unit/dialog/options.js +++ b/tests/unit/dialog/options.js @@ -206,7 +206,7 @@ test( "closeOnEscape", function() { } ); test( "closeText", function() { - expect( 3 ); + expect( 4 ); var element = $( "
" ).dialog(); equal( $.trim( element.dialog( "widget" ).find( ".ui-dialog-titlebar-close" ).text() ), "Close", @@ -222,6 +222,11 @@ test( "closeText", function() { equal( $.trim( element.dialog( "widget" ).find( ".ui-dialog-titlebar-close" ).text() ), "bar", "closeText via option method" ); element.remove(); + + element = $( "
" ).dialog( { closeText: "foo" } ); + equal( $.trim( element.dialog( "widget" ).find( ".ui-dialog-titlebar-close" ).text() ), "foo", + "closeText is escaped" ); + element.remove(); } ); test( "draggable", function() { diff --git a/ui/widgets/dialog.js b/ui/widgets/dialog.js index f0a2f6751..c3ca95ed3 100644 --- a/ui/widgets/dialog.js +++ b/ui/widgets/dialog.js @@ -426,7 +426,7 @@ $.widget( "ui.dialog", { // dialog in IE (#9312) this.uiDialogTitlebarClose = $( "" ) .button( { - label: this.options.closeText, + label: $( "" ).text( this.options.closeText ).html(), icon: "ui-icon-closethick", showLabel: false } ) @@ -715,7 +715,7 @@ $.widget( "ui.dialog", { this.uiDialogTitlebarClose.button( { // Ensure that we always pass a string - label: "" + value + label: $( "" ).text( "" + this.options.closeText ).html() } ); } -- 2.39.5