输入字段的值不会改变。当我警告变量时,我从MySQLI数据库中获取值,因此我的php脚本不会出现问题。此外,我已将value()交换为css颜色,实际上输入字段都是彩色的。所以我有点困惑为什么它只是没有将值更改为变量的值???
请注意触发事件的选项是下拉菜单中的选项之一;这就是为什么我必须提出攻击DOM然后跨越它并且它非常漫长。我是Jquery bww的新手,所以如果能以更好的方式做到这一点,我会很高兴听到。
如果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>
答案 0 :(得分:1)
我建议不要使用.closest,就像兄弟姐妹和孩子一样。 它可以使某些东西变得非常简单。
你正在获得你的价值,如果你可以改变颜色(正如你所说的那样),那么我认为你的错误就在某个地方。&#34;点&#34;正好在你想要设定价值的地方。
我看不到你的完整代码,尝试做一个简单的新元素,你可以只是为了测试目的,看看它是否有效。如果确实如此,那么您的失败就是指向您想要设置价值的确切位置。
编辑: 而不是创建一个新元素,只需将一个类添加到您的TD(或ID)之一并执行
$('.YOUR CLASS').val(WHAT YOU WANNA SET AS VALUE);