我有一个网页在一个php页面配置了搜索表单,而搜索结果表在另一个php页面中,我有以下javascript函数,用搜索结果呈现表格:
function createRestaurantsTable() {
var table = document.createElement('table');
var str = '<table cellspacing="1" class="tablesorter">';
str += '<thead><tr><th>Nome</th><th>Morada</th><th>Distancia</th></tr></thead>';
for ( var i=0; i< restaurantArr.length; i++){
str += '<tr><td><center class="IDcell">' + restaurantArr[i].name + '</center></td><td><center>' + restaurantArr[i].address + '</center></td><td><center>' + restaurantArr[i].distance.toFixed(2) + ' m</center></td></tr>';
}
str += '</table>';
str += "<div id='pager' class='pager'>";
str += "<form>"
str += "<img src='Tools/jquery.tablesorter/addons/pager/icons/first.png' class='first'/>";
str += "<img src='Tools/jquery.tablesorter/addons/pager/icons/prev.png' class='prev'/>"
str += "<input type='text' class='pagedisplay'/>";
str += "<img src='Tools/jquery.tablesorter/addons/pager/icons/next.png' class='next'/>";
str += "<img src='Tools/jquery.tablesorter/addons/pager/icons/last.png' class='last'/>";
str += "<select class='pagesize'>"
str += "<option selected='selected' value='5'>5</option>"
str += "<option value='10'>10</option>";
str += "<option value='15'>15</option>";
str += "<option value='20'>20</option>";
str += "<option value='25'>25</option>";
str += "<option value='30'>30</option>";
str += "<option value='35'>35</option>";
str += "<option value='40'>40</option>";
str += "<option value='45'>45</option>";
str += "<option value='50'>50</option>";
str += "</select>";
str += "</form>";
str += "</div>";
document.getElementById('restaurants_table').innerHTML = str;
$("table").tablesorter({headers: { 0:{ sorter: false }, 1:{ sorter: false }, 2: { sorter: false }}, widthFixed: true ,widgets: ['zebra']}).tablesorterPager({container: $("#pager")});
$('tr').click(function(event) {
var id = $(this).find(".IDcell").html();
if(id) {
window.location = "index.php?action=register_details&details_view_id=" + id + "&operation=v";
}
});
}
我有更多的JavaScript代码,但我认为这足以显示我的问题。 如果搜索表单在另一个php页面中,我如何呈现表?
提前致谢!
答案 0 :(得分:0)
首先,您可能不想混合使用三种技术并尝试仅使用一种技术:
将HTML写为字符串可以用JQuery替换。例如:
$("<div>").attr("id", "pager").append(...)
通过本机javascript按ID寻址元素可以用JQuery替换。 (第一种技术更快,但这只是简单性而是使用一种技术而不是混合它们。对于inst。:
$("#restaurant_table).html(insertedHtml);
您可能想要生成这样的寻呼机:
$("<div>").attr("id", "pager").append(...).appendTo("#restaurant_table");
我想你应该至少通过它的类来解决这个tableorter:
$("table.tablesorter")
如果您在运行中生成结构,您可能更愿意使用“实时”活页夹而不是点击活页夹 - 点击活页夹将仅解决那些已由浏览器构建的活动:
$("table.tablesorter tr").live("click", function(event) {...});
答案 1 :(得分:0)
您可能会使用POST
将表/表单传递给另一页。