2013-10-17 32 views
4

我有一個表單,我要求用戶輸入要發送的自動電子郵件的電子郵件地址。我已經設置了所需的電子郵件輸入並檢查有效的電子郵件,但它似乎只適用於第一個。我在這裏做錯了什麼?Jquery使用電子郵件驗證多個輸入

<form class="validate" method="post" id="formLoc"> 
     <div data-role="fieldcontain"> 
      <label for="email-from">from</label> 
      <input type="text" class="required email" id="email-from" placeholder="from" /> 
     </div> 
     <div data-role="fieldcontain"> 
      <label for="email-to">to</label> 
      <input type="text" id="email-to" class="required email" placeholder="to" /> 
     </div> 
     <div data-role="fieldcontain"> 
      <label for="email-message">message</label> 
      <textarea id="email-message" cols="100" rows="40"></textarea> 
     </div> 
     <div class="email-sent"> 
      <h4></h4> 
     </div> 

     <div class="SendEmailButton"> 
      <button type="submit" data-role="button" data-icon="forward" data-inline="true" 
       data-mini="true" data-theme="c">send</button> 
     </div> 

    </form> 

這裏的問題小提琴:http://jsfiddle.net/bobby5193/8dHg9/544/

+0

它適用於我也爲第二個電子郵件字段... – JoDev

+0

你檢查了小提琴,它的工作原理?我正在檢查Chrome,並且只會觸發第一個。它可能是瀏覽器相關的? – Bobby5193

+0

事情是,它會顯示第二個輸入焦點的錯誤,但即使我將其留空,表單也會被驗證。 – Bobby5193

回答

2

name屬性添加到這兩個輸入字段。

<input type="text" name="email-from" class="required email" id="email-from" placeholder="from" /> 
<input type="text" name="email-to" id="email-to" class="required email" placeholder="to" /> 
<textarea name="email-message" id="email-message" cols="100" rows="40" class="required"></textarea> 

這裏是一個jsFiddle

更新

這裏是一個更新的jsFiddle這對textarea驗證。我添加了name屬性和class="required"它。

+0

是的,這似乎是伎倆。謝謝:) – Bobby5193

+0

不客氣。 – Brian

+0

因此,如果他省略了'name'屬性,那麼驗證代碼莫名其妙地認爲兩個字段都具有相同(空的)名稱,並且只檢查其中的一個? – Blazemonger

0

如果你想獲得超過一個文本框中插入像

<ul> 
    <li> 
    <input id="emailcheck" type="text" placeholder="Email" name="ToEmails[0]" required /> 
    <input id="emailcheck" type="text" placeholder="Email" name="ToEmails[1]" required /> 
    <input id="emailcheck" type="text" placeholder="Email" name="ToEmails[2]" required /> 
    </li> 
</ul> 

電子郵件現在,我們將得到文本框中的所有電子郵件地址。

var email = $('input[name^=ToEmails]'); 
console.log(email);