2017-02-24 92 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