我有一个包含许多链接的页面,我在点击时使用$.address.value("/abc/")
。当我第一次点击它工作正常,但当我第二次点击相同的链接或其他链接时,它会抛出错误:
JavaScript运行时错误:无法获取未定义或空引用的属性“值”
我使用以下代码:
$(function () {
$.address.internalChange(function (event) {
if (event.value == "" || event.value == "/") {
$("#maincontainer").html('');
}
else {
var page = event.value.split('/');
if (page[1] == "page1") {
$.ajax({
type: "GET",
url: "page1.aspx",
success: function (data) {
$("#maincontainer").html(data);
}
});
}
else if (page[1] == "page2") {
}
else {
}
}
});
})
function gotopage(pageid){
if (pageid == 1) {
alert(pageid);
$.address.value("/page1/");
}
if (pageid == 2) {
alert(pageid);
$.address.value("/page2/");
}
}
$("ul#navigation li ul li").click(function (e) {
gotopage($(this).attr("rel"));
e.preventDefault();
});
答案 0 :(得分:0)
找到简单的解决方案如下:
$(document).ready(function () {
$.address.strict(false);
$.address.change(function (event) {
if (event.value != "") {
$("#content").load(event.value + '.aspx');
}
else { alert('load home page'); }
});
});
// ---------------------------
<a href="Default2.aspx" rel="address:/default2">Default2</a>
<a href="Default3.aspx" rel="address:/default3">Default3</a>