我有一个对 php 文件的 ajax 请求,每个文件返回 3 行值。
我想将这些附加到表中。这行得通。我在表格中获取我的信息,但我似乎无法添加类或 id 并在其上获得一些样式。
http://jsfiddle.net/AKh4n/1/
success : function(data) {
$('#lijstbeh').empty();
var data2 = jQuery.parseJSON(data);
$('#lijstbeh').append('<table class="table">');
$('#lijstbeh').append('<tr>');
$('#lijstbeh').append('<th>Behandeling ID</th>');
$('#lijstbeh').append('<th>Behandeling kort</th>');
$('#lijstbeh').append('<th>Behandeling datum</th>');
$('#lijstbeh').append('</tr>');
$.each (data2,function (bb) {
$('#lijstbeh').append('<tr class="tblbehandelingen">');
$('#lijstbeh').append('<td>' + data2[bb].BEH_ID + '</td>');
$('#lijstbeh').append('<td>' + data2[bb].BEH_behandelingkort + '</td>');
$('#lijstbeh').append('<td>' + data2[bb].BEH_datum + '</td>');
$('#lijstbeh').append('</tr>');
});
$('#lijstbeh').append('</table>');
}
编辑
$(document).ready(function () {
$('.tblbehpatienten').click(function () {
var value1 = $(this).find('td:first').text();
var value2 = $(this).find('td:first').next().text();
$("#beh_voornaampat").text(value1);
$("#beh_familienaampat").text(value2);
$.ajax({
type: 'POST',
url: 'home/getbehandelingen',
datatype: "JSON",
data: {
PA_firstname: value1,
PA_lastname: value2
},
success: function (data) {
$('#lijstbeh').empty();
var data2 = jQuery.parseJSON(data);
var table_string = '<table>' + '<tr><th>Behandeling ID</th>' +
'<th>Behandeling kort</th>' + '<th>Behandeling datum</th></tr>';
$.each(data2, function (bb) {
table_string += '<tr class="tbl"><td>' + data2[bb].BEH_ID + '</td>' +
'<td>' + data2[bb].BEH_behandelingkort +'</td>' +
'<td>' + data2[bb].BEH_datum + '</td></tr>';
});
table_string += '</table>';
$(table_string).appendTo('div#lijstbeh');
};
});
});
});
它现在正在做我的头。似乎无法让它工作。我在某个地方搞砸了}
吗?
再次编辑
};
应该}
我现在让它工作。谢谢!
您可能
希望将追加合并到一个append()
语句中。否则,jQuery会关闭每个标签。附加后查看 DOM。您的结构如下所示:
<div id="1">
<table></table>
<tr></tr>
<th>Behandeling ID</th>
<th>Behandeling kort</th>
<th>Behandeling datum</th>
<tr class="tbl" <="" tbody=""></tr>
<td>1</td>
<td>2</td>
<td>3</td>
</div>
如您所见,这不是一个有效的表。
此外,在您的click
处理程序中,您引用的是 ID 为"tbl"的元素,但它应该是像 .tbl
这样的类引用。
我还更改了您的click
处理程序,以使用 jQuery 的 on()
延迟。
$('#1').append('<table>'+
'<tr><th>Behandeling ID</th>'+
'<th>Behandeling kort</th>'+
'<th>Behandeling datum</th></tr>'+
'<tr class="tbl"><td>' + "1" + '</td>'+
'<td>' + "2" + '</td>'+
'<td>' + "3" + '</td></tr>'+
'</table>');
$(document).on('click','tr.tbl',function(){
alert("dfmlgk");
});
http://jsfiddle.net/AKh4n/2/
编辑:
或者,您可以使用 appendTo()
.
在此示例中,我首先将表构建为字符串。这对于动态生成的表可能更有用。将表构建为字符串也可以使用 append()
来完成;下面的示例演示了将表生成为字符串以及 appendTo()
方法。
var table_string='<table>'+
'<tr><th>Behandeling ID</th>'+
'<th>Behandeling kort</th>'+
'<th>Behandeling datum</th></tr>';
for (var i=1;i<=5;i++) {
table_string+='<tr class="tbl"><td>row '+i+' column 1</td>'+
'<td>row '+i+' column 2</td>'+
'<td>row '+i+' column 3</td></tr>';
}
table_string+="</table>";
$(table_string).appendTo('div#1');
$(document).on('click','tr.tbl',function(){
alert("dfmlgk");
});
http://jsfiddle.net/AKh4n/4/