2013-03-30 22 views
9

I'vegot以下ICanHaz表單模板:形式連載不起作用

<script id="outcomeFormTemplate" type="text/html"> 
    <form id="xyz" class="form-horizontal well" data-async data-target="#outcomeFormDialog" method="POST"> 
     <div class="modal-header"> 
      <button type="button" class="close" data-dismiss="modal">×</button> 
      <h3 id="myModalLabel">Add outcome</h3> 
     </div> 
     <div class="modal-body"> 
      <fieldset> 
       <label>Amount</label> 
       <div class="input-append"> 
        <input type="text" placeholder="00.01" /> 
        <span class="add-on">{{ currency }}</span> 
       </div> 
       {{>UserSelectTemplate}} 
       {{>CategorySelectTemplate}} 
       <label>Comment</label> 
       <input type="text" placeholder="Comment here..." /> 
      </fieldset> 
     </div> 
     <div class="modal-footer"> 
      <button class="btn" data-dismiss="modal">Close</button> 
      <button type="submit" class="btn btn-primary">Save outcome</button> 
     </div> 
    </form> 
</script> 

據如下呈現:

<form id="xyz" class="form-horizontal well" data-async="" data-target="#outcomeFormDialog" method="POST"> 
     <div class="modal-header"> 
      <button type="button" class="close" data-dismiss="modal">×</button> 
      <h3 id="myModalLabel">Add outcome</h3> 
     </div> 
     <div class="modal-body"> 
      <fieldset> 
       <label>Amount</label> 
       <div class="input-append"> 
        <input type="text" placeholder="00.01"> 
        <span class="add-on">zł</span> 
       </div> 
       <label>User</label> 
    <select> 
     <option>choose user</option> 
       <option value="pmc">Paul McCartney</option> 
       <option value="jl">John Lennon</option> 
       <option value="gh">George Harrison</option> 
       <option value="rs">Ringo Starr</option> 
     </select> 
       <label>Category</label> 
    <select> 
     <option>choose category</option> 
       <option value="1">food</option> 
       <option value="2">bills</option> 
       <option value="3">electronics</option> 
       <option value="4">entertainment</option> 
       <option value="5">travels</option> 
       <option value="6">bread</option> 
       <option value="7">bar</option> 
       <option value="8">fruits &amp; vegs</option> 
       <option value="9">press</option> 
       <option value="10">transport</option> 
       <option value="11">lunch</option> 
       <option value="12">books</option> 
       <option value="13">chemistry</option> 
       <option value="14">hygiene</option> 
       <option value="15">household goods</option> 
       <option value="16">house</option> 
       <option value="17">rent</option> 
       <option value="18">internet</option> 
       <option value="19">repairs</option> 
       <option value="20">presents</option> 
       <option value="21">tools</option> 
       <option value="22">cinema</option> 
       <option value="23">footwear</option> 
       <option value="24">clothing</option> 
       <option value="25">| Chmielewskiego</option> 
       <option value="26">flowers</option> 
       <option value="27">gas</option> 
       <option value="28">electricity</option> 
       <option value="29">phones</option> 
       <option value="30">meds</option> 
       <option value="31">meat</option> 
       <option value="32">takeaway</option> 
       <option value="33">cosmetics</option> 
       <option value="34">education</option> 
       <option value="45">theatre</option> 
       <option value="47">alcohol</option> 
       <option value="48">barber</option> 
       <option value="49">health</option> 
       <option value="50">doctor</option> 
       <option value="51">collectibles</option> 
       <option value="52">fish</option> 
       <option value="53">handout</option> 
       <option value="55">souvenirs</option> 
     </select> 
       <label>Comment</label> 
       <input type="text" placeholder="Comment here..."> 
      </fieldset> 
     </div> 
     <div class="modal-footer"> 
      <button class="btn" data-dismiss="modal">Close</button> 
      <button type="submit" class="btn btn-primary">Save outcome</button> 
     </div> 
    </form> 

的問題是,.serialize()返回空字符串。這是爲什麼?我的html結構有問題嗎?

$("#xyz").serialize() 
"" 

回答

29

您需要設置表單域的名稱。否則,它不知道如何命名這些字段。我從來沒有嘗試過,所以我不知道通常會發生什麼,但這是有道理的。

例如:

<select name="user"> 
+1

facepalm ...沒想到那個......謝謝 – ducin

+0

謝謝!我無法想象這一個爲我的生活。 Bootstrap應該在他們的例子中命名字段。 – reubano

+0

我也有facepalmed ...謝謝! – ximarin

5

serialize()查找輸入在它工作的輸入,所以使用name屬性的名稱屬性。

<label>Amount</label> 
<div class="input-append"> 
    <input type="text" name='amt' placeholder="0.01"> 
    <span class="add-on">zł</span> 
</div> 

如上所述,在它的輸入中使用name屬性。