将输入值应用于其所有td innerhtml
是否有可能在内部输入时更改所有td的innerhtml,我的意思是获取输入的值并将其应用于它的td innerhtml,例如,这里是表及其输入内部:
123
把它改成这个:
test 123
对于所有td和输入值而不应用id和类?! 请注意td innerhtml没有改变:)谢谢大家的帮助! ;)
这很简单。
首先命名您的表(以便轻松找到它)。
然后你可以这样做:
$('#the_table td input[type="text"]').each(function() { var val = $(this).val(); $(this).parent('td').html(val); });
现场演示 。
说明:
-
查找此特定表中
内的所有输入。
-
对于每个输入:
2.1从输入中检索值
2.2找到作为
标签的输入的第一个父级,并将其
innerHTML
设置为该值
是的,你可以这样做:
$('table td:has(:input:only-child)').each(function () { $(this).html($(':input', this).val()); });
它假设td
只有一个input
。 如果不是这样,那么删除:only-child
。
table td:has(:input:only-child)
说明table td:has(:input:only-child)
它说,取一个table
任何td
,它有一个input
作为唯一的孩子。
你可以在这里测试一下: http : //jsfiddle.net/eydtw/
更新:获取未hidden
的input
。
$('table td:has(input[type!="hidden"])').each(function () { $(this).html($('input[type!="hidden"]', this).val()); });
或:取input
text
。
$('table td:has(input:text)').each(function () { $(this).html($('input:text', this).val()); });
$.each($('table td'),function(){ if($(this).children().length !=0) { var temp = $($(this).children()[0]).val(); $(this).html(temp); } })