From f7949c1c23cc150cbf51155e0e479e26e53a37c4 Mon Sep 17 00:00:00 2001 From: jjt Date: Fri, 31 Jan 2014 15:52:20 -0800 Subject: [PATCH] Fix boolean attributes as per HTML5 spec --- src/dom/DOMPropertyOperations.js | 3 +++ src/dom/__tests__/DOMPropertyOperations-test.js | 4 ++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/dom/DOMPropertyOperations.js b/src/dom/DOMPropertyOperations.js index 595fe556d62..1f4a4637eaa 100644 --- a/src/dom/DOMPropertyOperations.js +++ b/src/dom/DOMPropertyOperations.js @@ -95,6 +95,9 @@ var DOMPropertyOperations = { return ''; } var attributeName = DOMProperty.getAttributeName[name]; + if (DOMProperty.hasBooleanValue[name]) { + return escapeTextForBrowser(attributeName); + } return processAttributeNameAndPrefix(attributeName) + escapeTextForBrowser(value) + '"'; } else if (DOMProperty.isCustomAttribute(name)) { diff --git a/src/dom/__tests__/DOMPropertyOperations-test.js b/src/dom/__tests__/DOMPropertyOperations-test.js index 1c4b222b5ef..a754afa91c9 100644 --- a/src/dom/__tests__/DOMPropertyOperations-test.js +++ b/src/dom/__tests__/DOMPropertyOperations-test.js @@ -82,12 +82,12 @@ describe('DOMPropertyOperations', function() { expect(DOMPropertyOperations.createMarkupForProperty( 'checked', 'simple' - )).toBe('checked="simple"'); + )).toBe('checked'); expect(DOMPropertyOperations.createMarkupForProperty( 'checked', true - )).toBe('checked="true"'); + )).toBe('checked'); expect(DOMPropertyOperations.createMarkupForProperty( 'checked',