2017-02-24 103 views
0

輸入字段的值沒有改變。當我提醒變量時,我從MySQLI數據庫中獲取值,所以我的php腳本不會出現問題。而且,我將value()換成了css顏色,實際上輸入字段都是彩色的。所以我有點困惑,爲什麼它只是不改變價值的變量的價值?jquery不改變輸入字段的值

請注意觸發事件的選項是下拉菜單中的一個選項;這就是爲什麼我必須提出DOM然後跨越,這是相當長的。我是jquery btw的新手,所以如果能以更好的方式完成,我會很高興聽到。

如果HTML是有幫助的,我已經添加它下面還有

預先感謝您。

jQuery的

$('.option').on('click', function(){ 

      var name = $(this).html(); 
      $.post('ajax.php', {name: name}, function(data) { 

       var obj = jQuery.parseJSON(data); 

       var item = obj[6] 
       var desc = obj[7] 
       var qty = obj[8] 
       var price = obj[9] 
       var disc = obj[10] 
       var account = obj[11] 
       var tax = obj[12] 
       var amount = obj[13] 



      $(this).closest("td").siblings().eq(0).children().val(item); 


      $(this).closest("td").siblings().eq(1).children().val(desc); 


      $(this).closest("td").siblings().eq(2).children().val(qty); 


      $(this).closest("td").siblings().eq(3).children().val(price); 


      $(this).closest("td").siblings().eq(4).children().val(disc); 


      $(this).closest("td").siblings().eq(5).children().val(account); 


      $(this).closest("td").siblings().eq(7).children().val(tax); 


      $(this).closest("td").siblings().eq(9).children().val(amount); 

      }); 
     }); 

HTML樣品

<td> 
    <input type="text" name = "sales[1][item]" size = "12"> 
    </td> 
    <td> 
    <button class="item" type = "button">Add</button> 
    <div class = "dropmenu"></div> 
    </td> 
    <td> 
    <input type="text" name="sales[1][description]" size="40"> 
    </td> 

回答

1

我建議所有的.closest不使用,就像兄弟姐妹和孩子。 它可以使一些事情變得非常簡單,令人困惑。

你正在獲得你的價值,如果你可以改變顏色(如你所說你可以),那麼我認爲你的錯誤是在某處「指向」你想要設置你的價值的地方。

我看不到你的完整代碼,嘗試做一個簡單的新元素,你可能只是爲了測試目的,並看看它是否工作。如果它確實如此,那麼你的失敗真的在指向你想要設定你的價值的地方。

編輯:的 ,而不是做一個新的元素,只需添加一個類的TD(或ID)中的一個,做

$('.YOUR CLASS').val(WHAT YOU WANNA SET AS VALUE); 
+0

是啊,我只是換了上面的一個 - \t $('#項目')VAL(項)。 - 它運行良好。 – user1849962

+0

這意味着你的「指向錯誤」,給每個元素提供ID或類別不是乾淨的代碼壽,但IMO更好,更少混淆作爲兒童,.sibling,。孩子,...,..只是因爲將來如果你或其他人想要改變它,添加或刪除一些TD可能會造成混亂,因爲你正在根據其他人制作元素。嘗試找到一箇中間術語,只創建您真正需要的類/ ID。 –

+0

每個元素的唯一id的問題雖然是我會有很多不同的行。我現在需要以某種方式得到一個獨特的ID爲下拉菜單 - 每行與輸入字段 - 之前,我可以分配正確的值在同一行的右側字段;這似乎也相當混亂;這就是爲什麼使用$(this)有吸引力 – user1849962