mirror of
https://github.com/bigskysoftware/htmx.git
synced 2025-10-02 15:25:26 +00:00
Merge pull request #350 from andyhorng/hx-preserve-fix
Handle preserved element that might not be existing
This commit is contained in:
commit
8c3ced2573
@ -497,7 +497,9 @@ return (function () {
|
||||
forEach(findAll(fragment, '[hx-preserve], [data-hx-preserve]'), function (preservedElt) {
|
||||
var id = getAttributeValue(preservedElt, "id");
|
||||
var oldElt = getDocument().getElementById(id);
|
||||
preservedElt.parentNode.replaceChild(oldElt, preservedElt);
|
||||
if (oldElt != null) {
|
||||
preservedElt.parentNode.replaceChild(oldElt, preservedElt);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -17,5 +17,14 @@ describe("hx-preserve attribute", function () {
|
||||
byId("d2").innerHTML.should.equal("New Content");
|
||||
})
|
||||
|
||||
it('handles preserved element that might not be existing', function () {
|
||||
this.server.respondWith("GET", "/test", "<div id='d1' hx-preserve>New Content</div><div id='d2'>New Content</div>");
|
||||
var div = make("<div hx-get='/test'><div id='d2'>Old Content</div></div>");
|
||||
div.click();
|
||||
this.server.respond();
|
||||
byId("d1").innerHTML.should.equal("New Content");
|
||||
byId("d2").innerHTML.should.equal("New Content");
|
||||
})
|
||||
|
||||
});
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user