简体   繁体   English

如何更改使用Jquery动态插入的表行值?

[英]How to alter table row value which is inserted dynamically using Jquery?

I want to alter HTML Table row which is inserted by dynamically. 我想更改动态插入的HTML表格行。

看到图片。

At beginning there will no rows in table. 开始时,表中没有行。

HTML Code HTML代码

<table class="table table-hover " id="queryTable">
   <thead>
       <tr>
           <th>Field Name</th>
           <th>Values</th>
       </tr>
   </thead>
   <tbody>

   </tbody>
</table>

JQUERY Code JQUERY代码

    //SELECT Table ROW
$(document).on("click", '#queryTable tbody tr', function () {
    var tr = $(this);
    var FieldName = tr.find("td:first").text();
    var Values = tr.find("td:last").text();

    FieldName = FieldName.replace('AND ', '');
    FieldName = FieldName.replace('OR ', '');

    Values = Values.replace('IN(', '');
    Values = Values.replace(')', '');

    $("#FilterField option[value=" + FieldName + "]").attr("selected", true);
    $("#FilterField").val(FieldName);
    $("#txtFilterValue").val(Values);   //FilterValue textbox id
});

$("#btnChange").click(function () {
    td.text($("#txtFilterValue").val());

});

Those 3 records are added dynamically. 这3条记录是动态添加的。 When user wants to modify the value of any FieldName of Values ,Once user click that row from the table, the value will show on Filter Value textbox as you can see above . 当用户想要修改任何FieldName of Values的值时 ,一旦用户单击表中的该行,该值将显示在Filter Value文本框中,如上所示

In the above pic, User select second row. 在上面的图片中,用户选择第二行。 once the user change the value in textbox and when they click the Change button the second row should alter. 一旦用户在文本框中更改了值,并且当他们单击“ 更改”按钮时 ,第二行就会更改。

Assuming your table id as YOURTABLEID and your textbox id as FILTERVALUETEXTBOX 假设您的表ID为YOURTABLEID ,文本框ID为FILTERVALUETEXTBOX

var td;
$(document).on("click","#YOURTABLEID td",function(){
    td=$(this);
    $("#FILTERVALUETEXTBOX").val($(this).text());
});

If you want to click on tr and want to get second td value, then 如果要单击tr并想获得第二个td值,则

var td;
$(document).on("click","#YOURTABLEID tr",function(){
    td=$(this).find("td:last"); //AS SECOND TD IS LAST
    $("#FILTERVALUETEXTBOX").val(td.text());
});

Once you get your td value in textbox, Change button click event will be as follow 在文本框中获得td值后,“更改”按钮的单击事件将如下所示

$("#btnChange").click(function(){
    td.text($("#FILTERVALUETEXTBOX").val());
});

UPDATE 更新

var td;//THIS IS MISSING IN YOUR CODE
$(document).on("click", '#queryTable tbody tr', function () {
var tr = $(this);
td=$(this).find("td:last");//THIS IS MISSING IN YOUR CODE
var FieldName = tr.find("td:first").text();
var Values = tr.find("td:last").text();

FieldName = FieldName.replace('AND ', '');
FieldName = FieldName.replace('OR ', '');

Values = Values.replace('IN(', '');
Values = Values.replace(')', '');

$("#FilterField option[value=" + FieldName + "]").attr("selected", true);
$("#FilterField").val(FieldName);
$("#txtFilterValue").val(Values);   //FilterValue textbox id
});

$("#btnChange").click(function () {
    td.text($("#txtFilterValue").val());

});

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM