Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jQuery:如何将模糊函数应用于每行的第四列_Jquery - Fatal编程技术网

jQuery:如何将模糊函数应用于每行的第四列

jQuery:如何将模糊函数应用于每行的第四列,jquery,Jquery,我是jQuery的新手。我试图在第四列的每一行中调用模糊函数。例如,我使用id调用了一个模糊函数,即“P4_1”。它应该能够调用与P4_2、P4_3等相同的id。 HTML: xyz.php $in_name=$_POST['ink_name']; $qty1=$_POST['ink_qty']; echo $in_name."/".$qty1; 我可以重写代码,但这只会增加代码行数。还有其他选择吗?请建议我。提前感谢。您可以重构代码,以所有第4列输入为目标,并使用以下方法获取相关输入值: 顺

我是jQuery的新手。我试图在第四列的每一行中调用模糊函数。例如,我使用id调用了一个模糊函数,即“P4_1”。它应该能够调用与P4_2、P4_3等相同的id。
HTML:

xyz.php

$in_name=$_POST['ink_name'];
$qty1=$_POST['ink_qty'];
echo $in_name."/".$qty1;

我可以重写代码,但这只会增加代码行数。还有其他选择吗?请建议我。提前感谢。

您可以重构代码,以所有第4列输入为目标,并使用以下方法获取相关输入值:

顺便说一句,改用
change
event


编辑:在编辑之后,您需要第n个孩子(3),但这要等到下次编辑之后。。。现在,您可以使用
td:last child
,但是…

我会放弃所有ID,使用
:nth-child()
:eq()
这样做:

(下面的替代方法)

$(函数(){
$('#myPassTbl td:nth child(4)input').blur(function(){
var$row=$(this.closest('tr');
var ink_name=$row.find('td:eq(0)input').val();
var ink_qty=$row.find('td:eq(2)input').val();
var数据={
“墨水数量”:墨水名称,
“墨水名称”:墨水数量
}
控制台日志(数据);
$.ajax({//)将值发送到php,然后发送到数据库。
方法:“张贴”,
url:“xyz.php”,
数据:数据
})
.done(函数(msg){
警报(msg);
});
});
});

笔名
发布
使用
返回

在您的示例中,您不需要通过
P2\u 1
?不需要。那么,为什么要编辑HTML标记呢?这使得发布的答案不再相关。。。那么在您的实际用例中,每行有多少个
td
$(function (){
 $("#P4_1").blur(function(){
       var $P3_1 = $("#P3_1");
          var $P1_1 = $("#P1_1");
       $.ajax({  //Passes value are sent to php and after to database.
          method: "POST",
          url: "xyz.php",
          data: 
          {
            "ink_qty":$P3_1.val(),
            "ink_name":$P1_1.val()
          }
        })

          .done(function( msg ) {
            alert(msg);
           });  
      });
});
$in_name=$_POST['ink_name'];
$qty1=$_POST['ink_qty'];
echo $in_name."/".$qty1;
$(function() {
  $("#myPassTbl td:nth-child(4)").change(function() {
    var ink_qty = $(this).closest('tr').find('input[name="colorno[]"]').val();
    var ink_name = $(this).closest('tr').find('input[name="ink_name[]"]').val();

    $.ajax({ //Passes value are sent to php and after to database.
      method: "POST",
      url: "xyz.php",
      data: {
        "ink_qty": ink_qty,
        "ink_name": ink_name
      }
    })    
    .done(function(msg) {
      alert(msg);
    });
  });
});