Javascript,在prev td中获取输入值
我有一个表,每行有两个输入,我试图计算该行的每个输入之间的差异,并将其显示在第3列中 我环顾了一下四周,试着从我的朋友那里得到答案 ,以及其他人,似乎没有一个适合我Javascript,在prev td中获取输入值,javascript,Javascript,我有一个表,每行有两个输入,我试图计算该行的每个输入之间的差异,并将其显示在第3列中 我环顾了一下四周,试着从我的朋友那里得到答案 ,以及其他人,似乎没有一个适合我 $(“.calibration\u input\u lin”).blur(函数(){ 变量输入=$(此) var val=input.val() var row=input.parents('tr').eq(0) var req=input.closest('td').prev().val() var res=$(“.resolu
$(“.calibration\u input\u lin”).blur(函数(){
变量输入=$(此)
var val=input.val()
var row=input.parents('tr').eq(0)
var req=input.closest('td').prev().val()
var res=$(“.resolution”).data(“resolution”)
var diff=差异=val-要求
var diff=固定的差异(res)
$.ajax({
url:“”,
数据:{value:val}
}).完成(功能(响应){
行查找(“.calibration\u lin\u input\u diff”).text(diff)
窗口警报(req);
});
//或者您可以在这里运行一些JS代码来计算差异
})
砝码
要求的
实际的
差别
class=“校准\u lin\u输入\u差异”>
class=“校准\u lin\u输入\u差异”>
class=“校准\u lin\u输入\u差异”>
您可以使用输入来代替模糊
。您可以针对父对象在每次输入更改时获取prev()
td的输入值
当输入中不存在值时,必须将初始值设置为0
。您可以使用三元运算符来实现这一点
HTML中没有数据用于toFixed()
的.resolution
元素
您可以尝试以下方法:
$(“.calibration\u input\u lin”).on('input',function(){
变量输入=$(此)
var val=input.val()?input.val():0;
var row=input.parents('tr').eq(0)
var req=input.parents('td').prev('td').find('input').val();
req=req?req:0;
//var res=$(“.resolution”).data(“resolution”)
var diff=val-req;
var diff=固定的差异(2);
$(this).parents('tr').find('.calibration\u lin\u input\u diff').text(diff);
//或者您可以在这里运行一些JS代码来计算差异
})
砝码
要求的
实际的
差别
var row=input.closest('tr')
Hi为什么要使用$(“.calibration\u input\u lin”).blur
?据我所知,您是否需要遍历所有行并计算行中前两个字段之间的差异?您好@KirillNovikov,这是其他人在建议中提供给我的。我不需要遍历所有行,只需要更新的行@mplungjan,当我将我的var row=input.parents('tr').eq(0)
替换为'var row=input.nest('tr')`时,它仍然无法识别第二个td(类校准输入请求)的输入。我更改了行var req=input.parents('td')。兄弟姐妹('td')).find('input').val()
tovar req=input.parents('td').prev().find('input').val()代码>并且它可以工作-上车!谢谢。当我在我的页面中添加行
时,它会删除位于第一个td中的所选选择器的格式-您看到了吗?同样,在第一个TD中也有一个输入会影响你的答案吗?是的,因为重复了大量代码,我把它拿了出来,但在我的页面上,该TD中有一个选择器输入,有大约100个选项可供选择。@ChrisNash,如果看不到完整的上下文,很难准确回答….$(this).closest('TD')。next().文本(差异)代码>太多了shorter@mplungjan,.next()
在更改第一个输入时不起作用…这只是用值替换第二个输入元素。虽然.text()
是个好主意……应该早就想到了……用它更新了。谢谢