PHP8.1.21版本已发布
vue8.1.21版本已发布
jquery8.1.21版本已发布

html中append追加的表格元素和静态显示的元素样式不同_html/css_WEB-ITnose

原创
2016-06-24 11:34:02 1224浏览

最近在仿写12306火车票查询页面。将12306网站的样式取了下来,其静态页面显示正常,但是通过ajax调用后台数据,再通过append回显却出现了表格挤压的情况。

1、正常显示页面如下:



html代码:












































车次

出发站 
 到达站
id="startendtime">
出发时间

到达时间
id="_span_lishi" style="cursor: pointer;">历时 商务座 特等座 一等座 二等座 高级

软卧
软卧 硬卧 软座 硬座 无座 其它 备注




onclick="myStopStation.open('1','65000C704001','SZQ','GGQ','20151023','3')"
href="javascript:" class="number">C7040


class="lookup" id="65000C704001_01_05_OMO" title="查看票价"
style="cursor: pointer;">



深圳 广州东



12:48 14:00


1小时12分 当日到达



--

--

90

282

--

--

--

--

--



--



2、通过ajax向后台发起请求,并通过append回显结果,却出现了表格被收缩的情况。如下图:



js代码如下:
function trainQuery(type){
//查询火车余票信息
var tckTyp = type;
var qryDate = $("#train_start_date").val();
var fromStn = $("#fromStationText").val();
var toStn = $("#toStationText").val();
var requestParams = "?qryDte=" + qryDate + "&fromStn=" + fromStn + "&toStn=" + toStn + "&tckTyp=" + tckTyp;
var paraObj = { apiId: 102, interfaceId: 3,  requestParams: requestParams};
$.ajax({
url : "${skx}/practicalTool",
type : "get",
dataType : "json",
data : paraObj,
success : function(json) {
if(json.resultcode == "200"){
var data = json.data;

var fromStan = "";

$("#_query_table_datas").css({"display" : "block"});
$("#_query_table_datas").html("");
$.each(data, function(i, trainData){
fromStan = trainData.fromStan;
var trainContent = "\n\n";

trainContent += "
\n
\n";
trainContent += "
\n" + trainData.stanTrainCde + "\n";
trainContent += "
\n\n";
trainContent += "
\n
\n " + trainData.fromStan +  " " + trainData.toStan + "\n";
trainContent += "
\n
\n" + trainData.startTme + " " + trainData.arvTme + "\n
\n";
trainContent += "
\n" + trainData.sptTme + " " + trainData.dayDif + "\n
\n
\n\n";
trainContent += "\n" + trainData.sw_Num + "\n\n";
trainContent += "\n" + trainData.td_num + "\n\n";
trainContent += "\n" + trainData.yd_num + "\n\n";
trainContent += "\n" + trainData.ed_num + "\n\n";
trainContent += "\n" + trainData.gr_num + "\n\n";
trainContent += "\n" + trainData.rw_num + "\n\n";
trainContent += "\n" + trainData.yw_num + "\n\n";
trainContent += "\n" + trainData.rz_num + "\n\n";
trainContent += "\n" + trainData.yz_num + "\n\n";
trainContent += "\n" + trainData.wz_num + "\n\n";
trainContent += "\n" + trainData.qt_num + "\n\n";
trainContent += "\n\n";
trainContent += "\n";
$("#_query_table_datas").append($(trainContent)); 
});

alert("fromStan:" + fromStan);

$(".errMsg").html("");
}
else{
$("#_query_table_datas").css({"display" : "none"});
$(".errMsg").html(json.reason);
}
},
error : function(){
$("#_query_table_datas").css({"display" : "none"});
$(".errMsg").html("火车票查询异常!");
}
});

return;
}

尝试了很多办法都不奏效,无奈之下只好到贵论坛寻求帮助!


回复讨论(解决方案)

审查元素检查下结构和样式

宽度是不是被限制了,查看查看样式??

审查元素看到的html如下:

 深圳北 广州南
22:26 23:02
00:36 当日到达
966----------75--
 深圳 广州东
22:38 23:50
1小时12分 当日到达
----107107------------
 深圳北 广州南
23:03 23:32
00:29 当日到达
----------57--


td里面的style是因为宽度不生效试图通过这种方式改善,结果无效。
style="white-space: nowrap;width=49px;"


审查结果显示第一个单元格宽度是13,不是49,也设置了不让文字换行。



好消息,已经找到问题答案了。问题出在对tbody设置了display:block属性,让表格不再适应原有宽度。注释掉如下代码就可以了。

$("#_query_table_datas").css({"display" : "block"});
声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。