knockout-bootstrap
knockout-bootstrap copied to clipboard
Possible bug in tooltip caption binding when content has escaped apostrophe
Hi,
I've found a possible bug in the tooltip binding. If the title
has an escaped apostrophe in its content, then calls to ko.applyBindings
fail.
That is, something like the following fails:
<span class="fa fa-question-circle" data-bind="tooltip: { title: 'Hey, I'm a tooltip help string!', placement: 'top' }" aria-hidden="true"></span>
Swapping the quotes styles around fixes the issue, so this works:
<span class="fa fa-question-circle" data-bind='tooltip: { title: "Hey, I'm a tooltip help string!", placement: "top" }' aria-hidden="true"></span>
But it seems like the first version should work fine. There is a demo here:
http://simonkittle.com/dev/ko-bootstrap-binding-error/
It makes no difference whether the apostrophe is escaped with '
, '
or '
.
I think perhaps this isn't a bug after all. According to the HTML 5 spec, any string values are permitted as values for HTML attributes, so the apostrophe should perhaps be escaped in the Javascript manner, \'
, rather than as an HTML entity (and ko-bs handles the former as expected).
(I came across this issue because ASP.NET's Razor uses HTML encoding, but I was able to work around that).