From 6bca818f348496990b3a38d40f3610f76b75cc26 Mon Sep 17 00:00:00 2001 From: Leo Horie Date: Thu, 26 Jun 2014 07:27:42 -0400 Subject: [PATCH] fix select.value so that it displays correct option on first render --- docs/change-log.md | 1 + mithril.js | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/change-log.md b/docs/change-log.md index 4fc58b58..fb8cf4bf 100644 --- a/docs/change-log.md +++ b/docs/change-log.md @@ -9,6 +9,7 @@ ### Bug Fixes: - fixed a subtree directive bug that happened in inputs inside loops +- fixed select.value so that the correct option is displayed on first render --- diff --git a/mithril.js b/mithril.js index 2922dee7..a8cf5f22 100644 --- a/mithril.js +++ b/mithril.js @@ -133,8 +133,9 @@ Mithril = m = new function app(window) { node = namespace === undefined ? window.document.createElement(data.tag) : window.document.createElementNS(namespace, data.tag) cached = { tag: data.tag, - attrs: setAttributes(node, data.tag, data.attrs, {}, namespace), + //process children before attrs so that select.value works correctly children: data.children !== undefined ? build(node, data.tag, undefined, undefined, data.children, cached.children, true, 0, data.attrs.contenteditable ? node : editable, namespace, configs) : undefined, + attrs: setAttributes(node, data.tag, data.attrs, {}, namespace), nodes: [node] } parentElement.insertBefore(node, parentElement.childNodes[index] || null)