0

我无法提交我的铁表。此时我只需要在控制台中查看内容,但是在尝试提交表单时,我只收到错误消息:未捕获的 TypeError:无法读取 null 的属性“提交”。我可能错过了一些明显的东西。我一直在使用该页面:https ://www.webcomponents.org/element/PolymerElements/iron-form

<iron-form id="sizeForm">
        <form method="post" action="">
            <paper-dropdown-menu label="Choose type" on-iron-select="_typeSelected">
                <paper-listbox slot="dropdown-content">
                    <paper-item value="Sneakers">Sneakers</paper-item>
                    <paper-item value="Shoes">Shoes</paper-item>
                    <paper-item value="T-shirts">T-shirts</paper-item>
                    <paper-item value="Jeans">Jeans</paper-item>
                </paper-listbox>
            </paper-dropdown-menu>
            <add-sneakers hidden$="{{hideSneakers}}"></add-sneakers>
            <paper-button onclick="{{_submitForm}}">Accept</paper-button>
            <div class="output"></div>
        </form>
    </iron-form>

<script>
    _submitForm() {
    document.getElementById('sizeForm').submit();
    }
</script>
4

2 回答 2

0

改变

<paper-button onclick="{{_submitForm}}">Accept</paper-button>

<paper-button on-tap="_submitForm">Accept</paper-button>

或者

<button onclick="_submitForm()">Accept</button>

此外,似乎iron-form文档弄错了:document.getElementById('sizeForm').submit()适用于 abutton但不适用于 a paper-buttonthis.$.sizeForm.submit()适用于任何一个。(我将对此进行更多探索,并可能会提交一个拉取请求。)

有关示例,请参见这支笔。

于 2018-03-10T01:08:12.227 回答
0

您需要根据您在 javascript 上的内容为表单提供 id 属性。

<form id="form_name" method="post" action="">

并在 javascript 上更正它,因为您在示例中使用的 id 是(已经)定义的。

document.getElementById('form_name').submit();

因此,最重要的是,您需要在表单中添加idjs代码中更正它。

于 2018-07-12T10:41:41.520 回答