diff --git a/lib/mixins/property-effects.html b/lib/mixins/property-effects.html
index 9dc5d3273e..e23d6fb299 100644
--- a/lib/mixins/property-effects.html
+++ b/lib/mixins/property-effects.html
@@ -598,7 +598,8 @@
if (binding.kind !== 'attribute') {
// Some browsers serialize `undefined` to `"undefined"`
if (binding.target === 'textContent' ||
- (node.localName == 'input' && binding.target == 'value')) {
+ (binding.target === 'value' &&
+ (node.localName === 'input' || node.localName === 'textarea'))) {
value = value == undefined ? '' : value;
}
}
diff --git a/test/unit/property-effects-elements.html b/test/unit/property-effects-elements.html
index 0d9853cde0..34e9113892 100644
--- a/test/unit/property-effects-elements.html
+++ b/test/unit/property-effects-elements.html
@@ -63,6 +63,7 @@
{{computeFromTrickyLiterals(3, 'tricky\,\'zot\'')}}
{{computeFromTrickyLiterals("(",3)}}
+