0
在這裏我有一段代碼,我一直在Firebug上進行調試。我想知道如何將我的參數foo
傳遞給函數getHoliday(param,param,param)
。這是我的XMLHttpRequest中的代碼塊。通過Javascript中的參數傳遞變量
if (XMLHttpRequestObject.readyState==4 && XMLHttpRequestObject.status == 200)
{
var pp = null
var dd = null
var xmlResponse = XMLHttpRequestObject.responseXML;
var foo = new Array();
foo = parseXML(xmlResponse);
getHoliday(pp,dd,foo);
}
的getHoliday
前兩個參數是未使用的,直到在後面的過程。我想先加載getHoliday
與數組foo
的數據,所以在將來我可以使用foo,如下所示。只要我的斷點到達getHoliday,腳本就會停下來,所以我相信這是錯誤的參數。我想指出,pp
和dd
什麼都不是,只是放置空的未定義參數。我剛剛通過
function getHoliday(monthSelected,theday,names)
{
var HolidayName = new Array();
var holiday = ""
HolidayName = names;
monthSelected = monthSelected + 1;
for(var index = 0; HolidayName.length >= index; index++)
{
if(HolidayName[index] == monthSelected && HolidayName[index+1] == theday)
{
holiday = HolidayName[index+2]
}
}
return holiday
}
只要我在這裏下來,names
陣列變得不確定。爲什麼?以下是HolidayName
數組應該看起來的樣子。
HolidayName = new Array(2,4,"Party--12:00",2,22,"Eventalist Launch--6:00",2,18,"Play Day--12:00",3,17,"Play Day--12:00"););
當警報foo
結果是:
2,4,"Party--12:00",2,22,"Eventalist Launch--6:00",2,18,"Play Day--12:00",3,17,"Play Day--12:00"
這裏是parseXML
function parseXML(xmlData)
{
var aOutput=document.getElementById("testing2");
var events = xmlData.getElementsByTagName('year').length;
for(var i=0;i< events;i++)
{
var eYear = xmlData.getElementsByTagName('year')[i].firstChild.nodeValue;
var eMonth = xmlData.getElementsByTagName('month')[i].firstChild.nodeValue;
var eDay = xmlData.getElementsByTagName('day')[i].firstChild.nodeValue;
var eHour = xmlData.getElementsByTagName('hours')[i].firstChild.nodeValue;
var eMinute = xmlData.getElementsByTagName('minutes')[i].firstChild.nodeValue;
var eTitle = xmlData.getElementsByTagName('title')[i].firstChild.nodeValue;
var holiStr = '"' + eTitle + "--" + eHour +":"+ eMinute + '"';
setup.push(eMonth,eDay, holiStr);
}
return setup;
}
'xhro.responseXML'已經是XML文檔對象了,您幾乎不需要解析它。請告訴我們'parseXML'的功能,它似乎返回'undefined' – Bergi 2013-02-27 00:03:53
提醒foo哪裏得到那個結果? – Brad 2013-02-27 00:05:28
順便說一句,在JavaScript中,你不能聲明變量類型。所有這些'= new Array()'調用都是無意義的。 – Bergi 2013-02-27 00:07:28