几天来,我一直在研究为什么我的铁模型和 polymer 元件无法正常工作。当我想在提交时从我的 paper-textarea 中查看我的值时,我不能,因为我的文件无法识别我的 id:feedbackForm。这是我的代码:
<form is="iron-form" method="get" action="/" id="feedbackForm">
<paper-textarea name="feedbacks" value="{{feedbackValue::input}}"
label="Explain your feedback - required" required></paper-textarea>
<paper-checkbox name="read" required>You must check this box</paper-checkbox>
<br>
<paper-button class="custom indigo popup" type="submit" raised onclick="submitForm(event)"></iron-icon>
Submit
</paper-button>
<div class="output"></div>
</form>
这是我的脚本:
<script>
function submitForm(event) {
console.log('enfin');
Polymer.dom(event).localTarget.parentElement.submit();
console.log(Polymer.dom(event).localTarget.parentElement);
}
feedbackForm.addEventListener('iron-form-submit', function (event) {
this.querySelector('.output').innerHTML = JSON.stringify(event.detail);
});
Polymer({
is: 'at-feedback-panel',
});
</script>
有人知道铁形态是怎么回事吗?当我尝试此操作时,我的浏览器告诉我 FeedbackForm 未知。
最佳答案
- 尝试将 "feedbackForm.addEventListener(..."更改为 "document.getElementById('feedbackForm').addEventListener(.."
事件监听器:
document.getElementById('feedbackForm').addEventListener('iron-form-submit', function (event) {
this.querySelector('.output').innerHTML = JSON.stringify(event.detail);
});
- 当 HTML DOM 准备就绪时,应调用事件监听器。因此,将所有
script
代码移至$(document).ready(function(){...})
内
看起来像:
<script>
$(document).ready(function({
function submitForm(event) {
console.log('enfin');
Polymer.dom(event).localTarget.parentElement.submit();
console.log(Polymer.dom(event).localTarget.parentElement);
}
document.getElementById('feedbackForm').addEventListener('iron-form-submit', function (event) {
this.querySelector('.output').innerHTML = JSON.stringify(event.detail);
});
Polymer({
is: 'at-feedback-panel',
});
}));
关于javascript - Polymer 1.0 Iron-form拒绝显示数据细节,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42255637/