Changing the text of a label seems easy:
var /**HTMLLabelElement*/ label = ...;
label.innerHTML = "...";
or, using jQuery:
var /**HTMLLabelElement*/ label = ...;
$(label).text("...");
Neither of the above works correctly if the label wraps the <input/>
element:
<label><input type="checkbox">Text</label>
-- in this case, the <input/>
element is replaced along with the old text.
How do I change just the text of a label, without affecting its child elements?