#24 — setAttribute does not work as intended with value as an attribute
State | Unconfirmed |
---|---|
Release: | 1.2 (Zope 2.10) |
Area | Client side framework and general |
Issue type | Bug |
Severity | Medium |
Submitted by | (anonymous) |
Submitted on | 2008-01-04 |
Responsible |
—
|
Target release: |
—
|
Last modified on
2008-01-04
When you do setAttribute on a <input> and set the 'value' to something, the dom is changed but the browser's shown value is not refreshed.
ree tried out the following patch which does the job:
Index: dom.js
===================================================================
--- dom.js (revision 49328)
+++ dom.js (working copy)
-206,6 +206,10 @@
// we need to convert this to boolean.
value = ! (value == '' || value == 'false' || value == 'False');
node.checked = value;
+ } else if (attrname.toLowerCase() == 'value') {
+ // setting value on input does not update on FF,
+ // if setAttribute is used...
+ node.value = value;
} else {
node.setAttribute(attrname, value);
}
That is do a node.value = value directly.
ree tried out the following patch which does the job:
Index: dom.js
===================================================================
--- dom.js (revision 49328)
+++ dom.js (working copy)
-206,6 +206,10 @@
// we need to convert this to boolean.
value = ! (value == '' || value == 'false' || value == 'False');
node.checked = value;
+ } else if (attrname.toLowerCase() == 'value') {
+ // setting value on input does not update on FF,
+ // if setAttribute is used...
+ node.value = value;
} else {
node.setAttribute(attrname, value);
}
That is do a node.value = value directly.
- Steps to reproduce:
- put an <input> field.
Change its value server or client side using setAttribute