Длинная история:
У меня есть две страницы PHP,
на странице start.php у меня есть выпадающий список выбора:
<select name="patient-list" id="patient-list" onchange="getPatientInfo(this.value)"></select>
Я использую jquery ajax, чтобы заполнить имена пациентов и детали из Patient_list.xml:
$.ajax({
type:"GET",
url:"./content/patient_list.xml",
dataType:"xml",
success: function(xml) {
$('patient', xml).each(function(){
var patient_id = $(this).attr('value');
var first_name = $(this).children("first_name").text();
var last_name = $(this).children("last_name").text();
var patient_name = first_name + " " + last_name;
$("#patient-list").append("<option class='patient' value='" + patient_id + "'>"+patient_name+"</option>");
//by default, the first item in patient_list.xml will show up
if (patient_id == 1) {
$(this).children().each(function(){
t = this.tagName;
addPatientDetails.call(this, t);
});
}
});
}
});
addPatientDetails выглядит так:
function addPatientDetails (tagName) {
var tag = $(this).text();
var t = tagName.replace(/_/g, ' ');
var detailTitle = t.replace(/\w\S*/g, function(t){return t.charAt(0).toUpperCase() + t.substr(1).toLowerCase();});
$("#patient_" + tagName).html("<p><span class='detail-title'>" + detailTitle + ": </span>" + tag + "</p>");
}
и onchange getPatientInfo выглядит так:
function getPatientInfo (patientID) {
$.ajax ({
type: "GET",
url: "./content/patient_list.xml",
dataType:"xml",
success: function (xml) {
$(xml).find("patient[value=" + patientID + "]").each(function(){
$(this).children().each(function(){
nm = this.tagName;
console.log(nm);
addPatientDetails.call(this,nm);
});
});
}
});
}
Теперь у меня есть вторая страница php Patient_session.php. Я хочу добиться:
Когда кто-либо выбирает пациента на странице start.php, это имя пациента будет отображаться / изменяться в Patient_session.php.
Какой самый эффективный способ добиться этого?
Большое спасибо!
Задача ещё не решена.
Других решений пока нет …