【发布时间】:2015-05-06 03:41:39
【问题描述】:
我遇到的问题可能是由于多种原因引起的,所以首先是场景。我正在为一个大约有 12 年历史的新闻档案系统重建一个导航界面。所以,一些遗留问题。我正在使用 php 和 jquery 的组合。
界面截图
数据:
平面文件结构...
目录 - 2015
文件:4-1-2015.dat + 30-1-2015.dat + 等
目录 - 2014
文件:- + 等
每个 *.dat 文件都包含该日期时事通讯的 html。
界面上每个 Month-Day 的 ID 根据文件结构设置,常见的 class="linky" eg: id="4-1-2015" = day-month-year {.dat 后来添加}
PHP 构建一个文件数组;在 [var = 列表] 下方截取
[2015] => Array
[1] => Array ~january
[0] => 4
[1] => 30
[2] => Array ~ february
[0] => 18
[3] => Array
[0] => 9 etc.
再次使用 PHP 构建第一个屏幕。
警报(见下文)适用于此。
那么 JQUERY...
$(document).ready(function() {
var dataArray = <?php echo json_encode($listing); ?>; // the full array
var yearArray = <?php echo json_encode($yearList); ?>; // just years
var newDate = parseInt($("#navYear").text(), 10)-1;
$.each(dataArray[$("#navYear").text()], function(index, days) { // index=Month value=Day
dataArray[$("#navYear").text()][index].sort(function(a, b){return a-b}); // numerical order
dayings = days.toString().split(','); // monthLinks = [1] 4,19 [2] 4,18,26 [3] 20
for ( var d = 0; d <dayings.length; ++d ) {
monListing = monListing+'<span class="linky" id="'+dayings[d]+'-'+index+'-'+newDate+'">'+monArray[index-1]+' '+dayings[d]+'</span>';
}
}); // end each...
$(".linky").click(function() {
dataLink = $(this).attr("id");
// dataLink = this.id;
alert(dataLink);
});
}); // end doc ready
正如我所提到的,PHP 构建会产生警报。 js没有。
FF 检查器清楚地显示 id 设置为预期的类。但没有警觉。
我已尝试将所有 monListing 值预先设置为整数和字符串。例如。
var eachDay = parseInt(dayings[d], 10);或:
var eachDay = dayings[d].toString();
我尝试将“-”更改为“_”
将 id 设置为“asd”
的多重排列......我能想到的可能是错误的。
我无法解决这个问题!!
这里有什么对你来说很明显的东西吗?
即使是最晦涩的建议也会受到欢迎。谢谢。
【问题讨论】:
-
当你点击
linky你得到了什么??我的意思是它在你的活动中导航?? -
声明变量:var dataLink = $(this).attr("id");
-
点击链接没有结果 - 没有“未定义”没有空警报框......什么都没有
标签: jquery