2016-02-19 142 views
6

我在短時間內使用聚合物,現在我想獲得紙張輸入的值。我不知道我該怎麼做。 這不是工作:聚合物獲取紙張輸入值

this.form.password 

我想這個字段的值:

<paper-input label="Password" type="password" id="password" name="password" size="25" value=""></paper-input> 

我也希望得到輸入相關的電子郵件輸入的提交:

<paper-input label="Login" id="email" name="email" size="25" value=""></paper-input> 

用於提交我正在使用:

<paper-button raised value="Login" type="submit" onclick="formhash(this.form, this.form.password);">Login</paper-button> 

正常的輸入字段正常工作。

+0

你使用這種形式的聚合物元素/組件? –

+0

我在紙卡中使用此 –

回答

6

您可以使用document.querySelector('#password').valueformhash()函數調用或函數的定義裏面有ID password得到的paper-input值使用<paper-input>和其它輸入元素。

您還可以使用聚合物的Automatic node finding使用其id來獲取元素的值。其中保留自定義元素中的表單/輸入並使用this.$.password.value來獲取ID爲password的元素的值。像這樣

<!-- create a custom component my-form --> 
<dom-module id="my-form"> 
    <template> 
     <form is="iron-form" id="form" method="post"> 
     <paper-input name="name" label="name" id="name"></paper-input> 
     <paper-button raised on-click="submitForm">Submit</paper-button> 
     </form> 
    </template> 
    <script type="text/javascript"> 
     Polymer({ 
      is: "my-form", 
      submitForm: function() { 
       alert(this.$.name.value); 
       if(this.$.name.value != "") // whatever input check 
        this.$.form.submit(); 
      } 
     }) 
    </script> 
</dom-module> 

<my-form></my-form> <!-- use custom-component my-form --> 
+0

現在我可以獲得價值,但我無法提交表單。這$提交()。不工作或this.submit();或者是其他東西。我現在如何提交。 –

+0

使用'this。$。form.submit()'其中'form'是'form'標記的** id ** –

+0

這不起作用。我不知道爲什麼。 –

0

使用<form is="iron-form">允許你在表單https://elements.polymer-project.org/elements/iron-form

<form is="iron-form" id="form" method="post" action="/form/handler"> 
    <paper-input name="name" label="name"></paper-input> 
    <input name="address"> 
    ... 
    <paper-button raised onclick="submitForm()">Submit</paper-button> 
</form> 


function submitForm() { 
    document.getElementById('form').submit(); 
} 
+0

但這不起作用。我需要formhash的值。我如何獲得價值並形成它。 –

0

如果你不想使用<form>你也可以簡單的文件輸入值存儲在實例變量,無論你想在以後使用它們。

所有你需要做的就是輸入存儲這樣的值內:

<paper-input label="Password" type="password" id="password" name="password" size="25" value="{{valueNameToStore}}"></paper-input>

,以便日後訪問它像這樣:

var myPassword = this.valueNameToStore;

相關問題