Number()的妙用
Number()是javascript中將字符型轉換為數值型的函數;
問題描述:做分頁,用js實現,獲取當前頁面的值,然后js自加1,可是點擊下一頁時,直接跳到最后一頁。選擇跳轉到某頁的時候,有的頁碼無法找到。代碼如下
//下一頁
function NextPage() {
var endPage = $.trim($("#endPage").val());
var nextPage =$.trim($("#curPageIndex").val());
if (nextPage >= endPage) {
nextPage = endPage;
}
else {
nextPage ++;
}
var targetPageAddr = $("#targetPageAddr").val();
window.location = targetPageAddr + encodeURIComponent(nextPage);
}
//直接跳轉到某頁
function ToJumpPage() {
var endPage = $.trim($("#endPage").val());
var jumpPage = $.trim($("#XPage").val());
if (/\D/.test(jumpPage)) {
$("#XPage").attr("value", "");
alert("請輸入正整數!");
return;
}
if (jumpPage > endPage || jumpPage < 1) {
$("#XPage").attr("value", "");
alert("抱歉,第" + jumpPage + "頁不存在!");
return;
}
var targetPageAddr = $("#targetPageAddr").val();
window.location = targetPageAddr + encodeURIComponent(jumpPage);
//window.location = "./Function.aspx?curPageIndex=" + encodeURIComponent(jumpPage);
}
應用了Number()后,也就是這樣的代碼,則實現了正常功能。
//下一頁
function NextPage() {
var endPage = $.trim($("#endPage").val());
var nextPage =Number($.trim($("#curPageIndex").val()));
if (nextPage >= endPage) {
nextPage = endPage;
}
else {
nextPage ++;
}
var targetPageAddr = $("#targetPageAddr").val();
window.location = targetPageAddr + encodeURIComponent(nextPage);
}
//直接跳轉到某頁
function ToJumpPage() {
var endPage = $.trim($("#endPage").val());
var jumpPage = Number($.trim($("#XPage").val()));
if (/\D/.test(jumpPage)) {
$("#XPage").attr("value", "");
alert("請輸入正整數!");
return;
}
if (jumpPage > endPage || jumpPage < 1) {
$("#XPage").attr("value", "");
alert("抱歉,第" + jumpPage + "頁不存在!");
return;
}
var targetPageAddr = $("#targetPageAddr").val();
window.location = targetPageAddr + encodeURIComponent(jumpPage);
//window.location = "./Function.aspx?curPageIndex=" + encodeURIComponent(jumpPage);
}
?
技術含量較低,歡迎大家提出更好的方法!也歡迎大家拍磚!