2015-06-17 92 views
1

我是聚合物新手,我正在使用鐵形式的組件向數據庫提交一個。我的問題是,我將如何能夠將錯誤報告給鐵形式和html?我曾嘗試使用php echo並通過json數組返回它。但它沒有顯示在網頁上。我會如何去做這件事?這裏是我的代碼:聚合物鐵形式輸出錯誤

include('config.php'); 
//Require the db file 
include('db.php'); 
$db = new db($dbhost, $dbuser, $dbpassword, $dbmaster); 
include('function.php'); 
$secure = new secure(); 

//Get the string. 
$email = $secure->clean($_GET["email"]); 
if ($secure->verify_email($email) == 'false') { 
    echo ' <paper-dialog id="error"> 
    <h2>Error Registering Your Account</h2> 
    <div> 
     Invalid Email! 
    </div> 
</paper-dialog> '; 
} 

我已經把在對其電子郵件中的錯誤輸入:asdff,所以它會故意拋出一個錯誤,但是當我提交,沒事的時候我看到在網絡上顯示選項卡上,我看到:

<paper-dialog id="error"> 
    <h2>Error Registering Your Account</h2> 
    <div> 
     Invalid Email! 
    </div> 
</paper-dialog> 

我的實際表單代碼是:

<form is="iron-form" id="formPost" method="post" action="core/register.php"> 
     <paper-input char-counter error-message="Invalid input!" label="Username" maxlength="25" required name="username"></paper-input> 
     <paper-input char-counter error-message="Invalid input!" label="Display Name" maxlength="35" required name="displayname"></paper-input> 
     <paper-input char-counter error-message="Invalid input!" label="Password" maxlength="25" required type="password" name="password"></paper-input> 
     <paper-input char-counter error-message="Invalid input!" label="Confrim Password" maxlength="25" required type="password" name="cfmpassword"></paper-input> 
     <paper-input char-counter error-message="Invalid input!" label="Email" maxlength="25" required type="" name="email"></paper-input> 
     <paper-checkbox required>By checking this box, you agree that you're atleast the age of 13 or above.</paper-checkbox> 
     <br /> 

     <br> 
     <div> 

     <paper-button raised 
      onclick="submitForm()"><iron-icon icon="check" style="margin-right:5px;"></iron-icon>Register</paper-button> 
     </div> 
</form> 
<script type="text/javascript"> 
    function submitForm() { 
     document.getElementById('formPost').submit(); 
    } 
</script> 

我怎麼會去使用鐵Ajax時顯示錯誤?對不起,如果我的問題是不可理解的,我真的不知道如何說出我的問題。

+0

http://stackoverflow.com/questions/14220321/how-to-return-the-response-from-an-asynchronous-call你可以使用答案中顯示的回調嗎?客戶端JS等待服務器的響應,處理程序檢查「onSuccess」,「onError」或JS承諾方法的響應屬性。 https://github.com/youssef06/polymer-login-form/blob/master/login-form/js/login-form.js檢查底部的「onclick()」.... –

+0

@RobertRowntree我會嘗試看看哪些工作,並在聚合物網站上,他們有一些事件,如** iron-form-error **:在提交表單並收到錯誤後觸發。 **鐵形式無效**:如果表單因無效而無法提交,則會被解僱。 **鐵形式反應**:在表格提交併收到回覆後觸發。 **鐵形式提交**:在提交表格後發射。我不需要在JS中使用這些事件之一嗎?這裏是實際的頁面:[link](https://elements.polymer-project.org/elements/iron-form) – user3339454

回答

1

我發現如何,我只是不得不將偵聽器iron-form-error添加到我的js中。