2012-07-19 95 views
0

我有一个列出课程的页面。当学生点击其中一个课程标题时,它将使用AJAX将参数(courseId)传递到第二个页面,该页面将返回课程详细信息。如何在第二页访问参数(courseId)?如果我直接在源而不是访问参数放一个值,它显示的细节:如何从第二页访问参数?

var idInput = 12345; 
var regNoInput = 098766; 

当我试图getElementById访问的参数,它并没有表现出任何的细节:

var idInput = document.getElementById("courseId").value; 
var regNoInput = document.getElementById("regNo").value; 

我也试过访问参数作为PHP变量,但仍然没有细节:

var idInput = "${courseId}"; 
var regNoInput = "${regNo}"; 

这是我的第一个网页脚本,参数是通过使用URL:

success: function(json_results){ 
    $('#list').append('<ul data-role="listview" data-inset="true"</ul>'); 
    listItems = $('#list').find('ul'); 
    $.each(json_results.rows, function(key) { 
    html = "<li data-mini='true' id='icon'><a href='MRegisteredClassesDetail.html? 
      courseId=" + [json_results.rows[key].courseId] + "&regNo=" + 
      [json_results.rows[key].regNo] +"' rel='external'>" + 
      json_results.rows[key].courseName+ "</a>" + "<a 
      href='http://137.57.102.146:8080/Training/MRateCourse.phone?courseId="+ 
      [json_results.rows[key].courseId] + "&regNo=" + 
      [json_results.rows[key].regNo] + "' rel='external'>RATE THIS COURSE</a> 
      </li>" ; 
    listItems.append(html); 
    }); 

,这是我的第二页,它应该读取参数值:

var idInput = "${courseId}"; 
    var regNoInput = "${regNo}"; 

    success: function(json_results){ 
    $('#list').append('<ul data-role="listview" data-inset="true"</ul>'); 
    listItems = $('#list').find('ul'); 
    $.each(json_results.rows, function(courseId) { 
    html ='<h1 align=center>'+json_results.rows[courseId].courseName+'</h1>'; 
    html +='<li>Registration Number:'+json_results.rows[courseId].regNo+'</li>'; 
    html +='<li>Registration Date:'+json_results.rows[courseId].regDate+'</li>'; 
     listItems.append(html); 
    }); 
+0

在url中做参数? – artwl 2012-07-19 01:41:59

+0

你如何将信息传递到下一页? – atomSmasher 2012-07-19 01:50:21

+0

yup ..它在url ..这里的网址.. " + json_results.rows[key].courseName+ " sone 2012-07-19 02:05:46

回答

0

我声明一个变量

var idInput = getParameterByName('courseId'); 

并定义功能

function getParameterByName(name) { 
     var match = RegExp('[?&]' + name + '=([^&]*)').exec(window.location.search); 
     return match && decodeURIComponent(match[1].replace(/\+/g, ' ')); 
    } 

它运作良好。

0

如果URL参数,试试这个:

var params=window.location.search.substr(1).split("&"), 
    idInput=params[0].split("=")[1], 
    regNoInput=params[1].split("=")[1]; 
+0

nope ...我无法得到它.. :( – sone 2012-07-19 06:29:16