i use this code for html file but it not working how to solve it some one help
它显示此消息/Users/pradeepyadav/Desktop/htmldemo/TestHtml.m:45:0 /Users/pradeepyadav/Desktop/htmldemo/TestHtml.m:45:警告:'TFHpple'可能无法响应'-search :
- (void)viewDidLoad {
[super viewDidLoad];
NSData *data = [[NSData alloc] initWithContentsOfFile:@"example.html"];
// Create parser
xpathParser = [[TFHpple alloc] initWithHTMLData:data];
//Get all the cells of the 2nd row of the 3rd table
NSArray *elements = [xpathParser search:@"//table[3]/tr[2]/td”];//here i get message search is not use in TFHpple.h
// Access the first cell
TFHppleElement *element = [elements objectAtIndex:0];
// Get the text within the cell tag
NSString *content = [element content];
[xpathParser release];
[data release];
}
This Is my html file
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><META http-equiv="Content-Type" content="text/html; charset=utf-8"><title>Ryanair.com</title><link rel="stylesheet" type="text/css" href="css/Ryanair/Standard.css" xmlns:ms="urn:schemas-microsoft-com:xslt" xmlns:usr="urn:the-xml-files:xslt"><link rel="stylesheet" type="text/css" href="css/Ryanair/datePicker.css" xmlns:ms="urn:schemas-microsoft-com:xslt" xmlns:usr="urn:the-xml-files:xslt"><script type="text/javascript" src="/data/js/skysales_3F5DBD0632207A3932CD626AEDC1A849.js"></script><script type="text/javascript" src="/data/js/skysales_B5A6631CD62DEC33073F138AE4A7C8D2.js"></script><script src="http://www.google.com/jsapi"></script><script type="text/javascript" charset="utf-8">
google.load('ads.search', '2');
</script><script type="text/javascript" language="javascript" xmlns:ms="urn:schemas-microsoft-com:xslt" xmlns:usr="urn:the-xml-files:xslt">
Date.dayNames=['Sunday','Monday','Tuesday','Wednesday','Thusday','Friday','Saturday'];
Date.monthNames=['January','February','March','April','May','June','July','August','September','October','November','December'];
if (typeof jQuery != 'undefined') {
$.dpText={
TEXT_PREV_YEAR:'Previous year',
TEXT_PREV_MONTH:'Previous month',
TEXT_NEXT_YEAR:'Next year',
TEXT_NEXT_MONTH:'Next month',
TEXT_CLOSE:'Close',
TEXT_CHOOSE_DATE:' '
};
}
var datePickerFormat='yyyy-mm-dd';
var datePickerDelimiter='-';
Date.format=datePickerFormat;
var pln="en";
var pcu="IE";
</script></head><body><noscript xmlns:ms="urn:schemas-microsoft-com:xslt" xmlns:usr="urn:the-xml-files:xslt"><p class="error noprint">
ERROR:
This service makes use of Javascript, which appears to be turned off.
Click <a href="activateJavascript.htm">here</a> to learn how to activate it.
</p></noscript><form novalidate="true"method="post" action="FRSelect.aspx" id="SkySales" ><div><input type="hidden" name="__EVENTTARGET" id="__EVENTTARGET" value=""><input type="hidden" name="__EVENTARGUMENT" id="__EVENTARGUMENT" value=""><input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUBMGRkg4UKvNNb1NbM14/2n9zUxhNQ++A="></div><div id="header" style="width: 100%;"><div id="blu"><a href="http://www.ryanair.com"><img src="Images/Ryanair/logoyelbg.gif" width="228" height="42" alt="Ryanair.com Homepage" title="Ryanair.com Homepage"></a></div><div id="yel" onclick="this.firstChild.innerHTML='WWW156 2011-09-29 06:31:09 reglixj3c555jw1v|413894465 ';"><span title="DNS: www156 62.73.129.156 10.37.2.156 "> </span>Search » <b>Select</b> » Services » Payment » Itinerary</div><input type="hidden" id="sysdate" value="2011-09-29"><input type="hidden" id="systime" value="06:31:09"></div><div><div id="body"><div id="wrapper"><div id="error"><input type="hidden" name="errorlist" value=""><script language="Javascript" type="text/javascript">
$(document).ready(function(){
var msg = "";
if (msg.length > 0) {
msg = msg.replace(/([\.|:])\s*([^\.]+)/g,"$1``$2")
var msg_array = msg.split("``");
var newMsg = "";
for (var idx = 1; idx < msg_array.length + 1; idx++){
if (newMsg.indexOf(msg_array[msg_array.length - idx]) == -1) {
newMsg = msg_array[msg_array.length - idx] + "\n" + newMsg ;
}
}
alert(newMsg);
}
});
</script></div><div id="main"><p><b>Here are the flights and fares available on the requested date(s).</b></p><ol><li>Select the flight of your choice.</li><li>Click on the fare name to see the fare rules.</li></ol><script language="javascript" type="text/javascript">
$(document).ready(function() {
var minDepArr = ('2011 09 29 12 31').split(' ');
var minDep = new Date(minDepArr[0],minDepArr[1]-1,minDepArr[2],minDepArr[3],minDepArr[4]);
$(".avlLst").each(function(){
if($(this).find("input[type='radio']").size() == 0){
$("input[id$='_ButtonSubmit']").attr('disabled', 'disabled').css('background-color','#C0C0C0');
}
});
$("input[type=radio]").each(function() {
var re = new RegExp("[0-9]{2}\/[0-9]{2}\/[0-9]{4}\\s[0-9]{2}\:[0-9]{2}");
var m = re.exec($(this).val());
if(m != null){
var regexp = /([0-9]{2})(\/)([0-9]{2})(\/)([0-9]{4})(\s)([0-9]{2}):([0-9]{2})/gi;
var depArr = m[0].replace(regexp,'$5 $1 $3 $7 $8').split(' ');
var dep = new Date(depArr[0],depArr[1]-1,depArr[2],depArr[3],depArr[4]);
if(dep <= minDep){
$(this).attr('disabled', 'disabled').attr('checked','');
}
}
});
});
function setTabIndex(marketIndex, index){
var fld=['',
''];
var i=marketIndex==1?0:1;
document.getElementById(fld[i]).value = index;
postBack();
}
function postBack(){
;
}
var pleaseWaitMessage = 'Please Wait...';
var marketHeaders = ['','Going Out','Coming Back'];
function feesTaxes(fltKeys,names){
var mkts=[];
for(var k in names){
var market=names[k].charAt(names[k].length-1);
mkts.push(market);
$("div#taxAndFeeInclusiveDivBody"+market).css('background-color','#A3AECC').find(".hdr").html('<span>'+pleaseWaitMessage+'</span>').css('background-color','#FFFF99')
.ajaxError(function(evt,req,sett){
$(this).html('<span>Unavailable... try again!</span>').css('background-color','#FFBBBB');
});
}
$.get("FRTaxAndFeeInclusiveDisplay-resource.aspx",
{'flightKeys':fltKeys.join('+++'), 'numberOfMarkets':fltKeys.length, 'keyDelimeter':'+++'},
function(data,stat){
$htm=$(data);
for(var i=0,ml=mkts.length;i<ml;i++){
if($($htm[i]).html().match(/RefreshWindow/) ) {
window.location.reload(true);
}
$("div#taxAndFeeInclusiveDivBody"+mkts[i]).css('background-color','white').html('<p class="hdr">'+marketHeaders[mkts[i]]+'</p>'+$($htm[i]).html());
}
$('big#totalPrice').text($($htm[$htm.size()-1]).text());
}
);
}
function selFlight(o){
if(!o) return false;
$(o).parents('table:first').find("div[class^='planeImg']").css('background-position','top left');
$(o).parents('table:first').find("tr").removeAttr('class');
var tro=$(o).parents('tr:first').attr('class','on');
var pval=[],pname=[],doJson=true;
var A=parseIDDate(tro.attr("id"));
var outDTarr=new Date(A[1],A[2],A[3],A[4]+1,A[5],A[6]);
$(".avlLst table").each(function(){
var $chkbs=$(this).find("input[type='radio'][name*='market']");
if(A[0]==1 && $chkbs.is("input[name*='market2']"))
{
$chkbs.each(function(){
var troB=$(this).parents('tr:first');
var B=parseIDDate(troB.attr("id"));
var inDTdep=new Date(B[1],B[2],B[3],B[4],B[5],B[6]);
if(outDTarr>=inDTdep)
{
$(this).attr('disabled', 'disabled').attr('checked','');
$("div[class^='planeImg']", troB).css('background-position','top left').attr('disabled', 'disabled');
}else
{
$(this).attr('disabled', '');
$("div[class^='planeImg']", troB).attr('disabled', '');
}
});
}
var $chkb=$chkbs.filter(':checked');
if($chkb.size()!=0)
{
pval.push($chkb.val());pname.push($chkb.attr('name'));
$chkb.parent().prev().children('div').css('background-position','top right');
}
else if($chkbs.is(':enabled'))
{
doJson=false;
if(A[0]==1)
{
$chkbs.filter(':enabled:first').attr('checked','true').trigger('click');
}
}
else $("div[id*='taxAndFeeInclusiveDivBody']", this.parent).find("*:not(.hdr)").remove();
});
if(doJson)
{
feesTaxes(pval,pname);
}
}
function parseIDDate(s){
var a=s.split('_');
for(var k in a) a[k]=parseInt(a[k].replace(/^0([0-9]+)/,'$1'));
return a;
}
var nbrMarkets=2;
var dateRanges=[[],[new Date(2011,9,2), new Date(2011,9,2)],[new Date(2011,9,5), new Date(2011,9,5)]];
var localization={
inPast:'You cannot search earlier than the current date.',
datesOverlap:'Your outbound date range cannot overlap your return date range',
timesOverlap:'Please recheck the flights you selected\nYour second flight(s) must DEPART at least 1 hour(s) after your first flight(s) ARRIVES!',
bookToday:'Unfortunatley due to security restrictions, If you wish to book a flight departing today.\nYou must either make the booking through your local RYANAIR CALL CENTER or at the AIRPORT.'
};
function checkDate(market,days){
var flexi=Math.abs(days)==7?true:false;
var idx=days>0?1:0;
var today=new Date(), tomorrow=new Date(); tomorrow.addDays(1);
if(idx==0 && dateRanges[market][idx] <= today){
alert(localization['inPast']);
return false;
}
if(nbrMarkets > 1){
var overlap=false;
if(market==2 && idx==0 && dateRanges[market][idx] <= dateRanges[market-1][idx]) overlap=true;
else if(market==1 && idx==1 && dateRanges[market][idx] >= dateRanges[market+1][idx]) overlap=true;
if(overlap){
alert(localization['datesOverlap']);
return false;
}
}
return true;
}
function checkTimes(){
if(nbrMarkets < 2) return true;
var DA=[0,0];
$(".avlLst table input[type='radio']:checked").each(function(){
var A=parseIDDate($(this).parents("tr:first").attr("id"));
DA[A[0]-1]=new Date(A[1],A[2],A[3],A[4],A[5],A[6]);
});
$("input[id*='oTime']").each(function(){
var A=parseIDDate($(this).val());
DA[A[0]-1]=new Date(A[1],A[2],A[3],A[4],A[5],A[6]);
});
if((DA[1]-DA[0]) <= (60*60*1000)){
alert(localization['timesOverlap']);
return false;
}
return true;
}
$(document).ready(function(){
// This could probably be cleaned up
$("a[id*='LinkButtonNextDay1']").click(function(){return checkDate(1,1);});
$("a[id*='LinkButtonNextWeek1']").click(function(){return checkDate(1,7);});
$("a[id*='LinkButtonPreviousDay1']").click(function(){return checkDate(1,-1);});
$("a[id*='LinkButtonPreviousWeek1']").click(function(){return checkDate(1,-7);});
$("a[id*='LinkButtonNextDay2']").click(function(){return checkDate(2,1);});
$("a[id*='LinkButtonNextWeek2']").click(function(){return checkDate(2,7);});
$("a[id*='LinkButtonPreviousDay2']").click(function(){return checkDate(2,-1);});
$("a[id*='LinkButtonPreviousWeek2']").click(function(){return checkDate(2,-7);});
$("a[id*='tab_']").click(function(){
var A=this.id.split("_");
var tabDate=new Date(A[2],A[3]-1,A[4]);
var dtime=new Date(), today=new Date(dtime.getFullYear(),dtime.getMonth(),dtime.getDate());
return true;
});
$("table[id*=ttable] th").click(function(){
eval($(this).find("a").attr("href"));
}).hover(function(){
$(this).find("a").css("text-decoration", "underline");
},function(){ $(this).find("a").css("text-decoration", "none");
});
$(".avlLst table").find("div[class^='planeImg'],input[type='radio']").click(function(){selFlight(this);});
var firstRadio=null;
$(".avlLst table").each(function(){
var $chkbs= $("input[type='radio'][name*='market'][lwst='true']:enabled:first", this);
if($chkbs.size() == 0){
$chkbs = $("input[type='radio'][name*='market']:enabled:first", this);
}
$chkbs.each(function(){
$(this).attr('checked','checked').parents('tr:first').attr('class','on');
if(firstRadio==null) firstRadio=this;
});
var filter=function(){
var flnum=this.value.replace(/.*FR~\s*(\d+)~.*/, 'FR$1');
var a=preselectflights.split(',');
for(var i=0;i<a.length;i++) if(a[i].replace(/\s/g, '')==flnum) return true;
return false;
};
if(preselectflights!=''){
$("input[type='radio'][name*='market']:enabled", this).filter(filter).eq(0).each(function(){
$(this).attr('checked','checked');
firstRadio=this;
});
}
});
$(firstRadio).trigger('click');
displayPopUpFareRule = getFareRule;
displayPopUpFareRule('K','K2LOW|K|FR|BND2||en-IE','ADT');
});
var preselectflights='';
function getFareRule(classOfService, fareRuleKeys, paxTypes){
var url='FareRules.aspx?fareRuleKeys=' + fareRuleKeys +'&class=' + classOfService + '&paxTypes=' + paxTypes;
$('div#fareRules').load(url + ' #main h2,#main div', function() {
$('#main div.avlLst > table td:nth-child(3)').each(function(index, cell) { $(cell).wrapInner('<a href="#" onclick="return false;"></a>'); });
$('#fareRules').jqm({overlay: 30, modal: false, onShow: showFareRules}).jqmAddTrigger('#main div.avlLst > table td:nth-child(3) *').jqmAddClose('#fareRules h2 span');
});
}
function showFareRules(hs)
{
var pos = $(hs.t).offset();
var width = $(hs.t).width();
$('#fareRules').css( { 'left': (pos.left + width) + 'px', 'top': pos.top + 'px' });
hs.w.show();
}
</script><div class="avlBlk"><h2>Going Out <span>From Aarhus - Malaga</span></h2><table><tr><td align="left" class="chgOff"><a id="AvailabilityInputFRSelectView_LinkButtonPreviousDay1" href="javascript:__doPostBack('AvailabilityInputFRSelectView$LinkButtonPreviousDay1','')">« Previous Day</a></td><td align="right" class="chgOn"><a id="AvailabilityInputFRSelectView_LinkButtonNextDay1" href="javascript:__doPostBack('AvailabilityInputFRSelectView$LinkButtonNextDay1','')">Next Day »</a></td></tr></table><div class="avlLst avlLst1"><p id="taxAndFeeInclusiveDivHeader1"><b>Select A Flight</b></p><div id="taxAndFeeInclusiveDivBody1" class="drilldown"><p class="hdr">Select a Flight</p></div><table><tr id="1_2011_9_2_23_05_00"><td><div class="planeImg1" title="Click to select this fare on this flight"></div></td><td><input id="AvailabilityInputFRSelectView_RadioButtonMkt1Fare1" type="radio" name="AvailabilityInputFRSelectView$market1" value="K~K2LOW~BND2~~RoundFrom|FR~2523~ ~~AAR~10/02/2011 19:30~AGP~10/02/2011 23:05" onclick="return raise('SelectFare', new SelectFareEventArgs(1, 1, 'K'))" required="true" requiredError="Please select a flight and fare in every market." checked lwst="true"></td><td>Regular Fare</td><td>Adult<br></td><td align="right" style="font-size:110%;">449.00 DKK<br></td><td></td><td><b>Sun</b>2 Oct 11<br><b>Flight</b>FR 2523</td><td>19:30 Depart<br>23:05 Arrive</td></tr></table><div style="clear:both; width: 100%; text-align: center;"><a href="javascript:infoWin('trvfee',0,0,'EN')">Fares do not include optional fees/charges. For a full list of Ryanair fees, please click here</a></div><div class="clr"></div></div></div><div class="avlBlk"><h2>Coming Back <span>From Malaga - Aarhus</span></h2><table><tr><td align="left" class="chgOff"><a id="AvailabilityInputFRSelectView_LinkButtonPreviousDay2" href="javascript:__doPostBack('AvailabilityInputFRSelectView$LinkButtonPreviousDay2','')">« Previous Day</a></td><td align="right" class="chgOn"><a id="AvailabilityInputFRSelectView_LinkButtonNextDay2" href="javascript:__doPostBack('AvailabilityInputFRSelectView$LinkButtonNextDay2','')">Next Day »</a></td></tr></table><div class="avlLst avlLst1"><p id="taxAndFeeInclusiveDivHeader2"><b>Select A Flight</b></p><div id="taxAndFeeInclusiveDivBody2" class="drilldown"><p class="hdr">Select a Flight</p></div><table><tr id="2_2011_9_5_15_50_00"><td><div class="planeImg2" title="Click to select this fare on this flight"></div></td><td><input id="AvailabilityInputFRSelectView_RadioButtonMkt2Fare1" type="radio" name="AvailabilityInputFRSelectView$market2" value="C~C2LOW~BND2~~RoundFrom|FR~2522~ ~~AGP~10/05/2011 15:50~AAR~10/05/2011 19:30" onclick="return raise('SelectFare', new SelectFareEventArgs(2, 1, 'C'))" required="true" requiredError="Please select a flight and fare in every market." checked lwst="true"></td><td>No Taxes</td><td>Adult<br></td><td align="right" style="font-size:110%;">379.00 DKK<br></td><td></td><td><b>Wed</b>5 Oct 11<br><b>Flight</b>FR 2522</td><td>15:50 Depart<br>19:30 Arrive</td></tr></table><div style="clear:both; width: 100%; text-align: center;"><a href="javascript:infoWin('trvfee',0,0,'EN')">Fares do not include optional fees/charges. For a full list of Ryanair fees, please click here</a></div><div class="clr"></div></div></div><div class="section right" style="width:38%;padding:4px;"><div class="bld" style="font-size:16px;margin-bottom: 4px;"><p style="float:left;"><big>Total</big></p><p class="rght"><big id="totalPrice">Please Wait...</big></p></div><p><small>Optional charges such as administration and checked baggage fees are not included.<br><a href="javascript:infoWin('trvfee',0,0,'EN');">Click here for details</a></small></p></div><div style="display: none; border: 1px solid black; position: absolute; background-color: white; width: 33%; padding: 0 5px 5px 5px;" id="fareRules"></div><div class="btnRight"><input class="buttonRight" onClick="return validate(this) && checkTimes() && preventDoubleClick();" type="submit" name="AvailabilityInputFRSelectView$ButtonSubmit" value="Select and Continue" id="AvailabilityInputFRSelectView_ButtonSubmit"><button id="NewSrch" class="button" onclick="
 window.location='FRSearch.aspx';
 
 return false;
 ">New Search</button><style type="text/css">
.ad_header {color:#191970;font-weight:bold;font-size:11px}
.ad_line1 {color:#0000FF;font-size:13px; text-decoration:underline}
.ad_url {color:#008000;margin-bottom:12px; text-decoration:none}
.ad_text {color:#191970;text-decoration:none}
.wide_ads {padding:5px;}
div.ads ul {margin: 0px; list-style: none;}
.narrow_ads {padding:2px;position: absolute; top: 100px; left: 780px; width:200px;}
</style><div id="wide_ad_unit" class="ads wide_ads"></div><div id="narrow_ad_unit" class="ads narrow_ads"></div><script type="text/javascript" charset="utf-8">
var channels = {'DE':'1901616133','ES':'1730142402','FR':'4307283847','GB':'3975277388','IE':'0091594208','IT':'9330300293','NL':'6066899700','PL':'0911139945','SE':'1735271438','Other':'1974134150'};
var channelid= channels['IE'];
if (channelid == null) channelid='1974134150';
var pageOptions = {
'pubId' : 'pub-3031568651010206',
'query' : 'Malaga Flight',
'channel' : channelid,
'linkTarget' : '_blank',
'siteLinks' : true,
'sellerRatings' : true
};
var adblock = {
'container' : 'narrow_ad_unit',
'number' : 8,
'width' : '250px',
'lines' : 3,
'fontFamily' : 'verdana',
'colorText' : '#191970',
'fontSizeTitle' : '13px',
'fontSizeDescription' : '11px',
'fontSizeDomainLink' : '11px',
'colorBackground' : '#BFD6F7',
'colorDomainLink' : 'blue',
'colorBorder' : '#BFD6F7'
};
var adblock2 = {
'container' : 'wide_ad_unit',
'number' : 5,
'width' : '400px',
'lines' : 3,
'fontFamily' : 'verdana',
'colorText' : '#191970',
'fontSizeTitle' : '13px',
'fontSizeDescription' : '11px',
'fontSizeDomainLink' : '11px',
'colorDomainLink' : 'blue',
'colorBackground' : 'white',
'colorBorder' : 'white'
};
new google.ads.search.Ads(pageOptions, adblock);
</script><div id="YahooBottomSelectAds"></div><script type="text/javascript">
$(document).ready(function(){
keywordsToUse = "Malaga Flight";
resultsHeader = "Sponsored Listings";
currentLanguage = "en";
currentCulture = "IE";
destination = "Malaga";
YahooAds_SetFrame();
});
</script></div></div></div><div class="clr"></div><div id="footer"><div id="fLinks"><a href="http://www.ryanair.com" title="Home">Home</a> | <a href="http://www.ryanair.com/site/EN/faqs.php" title="F.A.Q." target="_blank">F.A.Q.</a> | <a href="http://www.ryanair.com/site/EN/conditions.php?view=privacy" title="Privacy Policy" target="_blank">Privacy Policy</a> | <a href="http://www.ryanair.com/site/EN/conditions.php" title="General Terms & Conditions of Carriage" target="_blank">General Terms & Conditions of Carriage</a> | <a href="http://www.ryanair.com/en/terms-and-conditions/copywrite" title="Terms of Use" target="_blank">Terms of Use</a> | <a href="http://www.ryanair.com/site/EN/faqs.php?sect=CONTACT&div=int_sup" title="Contact Us" target="_blank">Contact Us</a> | <a href="javascript:infoWin('trvfee',0,0,'EN');" title="Fees">Fees</a></div><div id="copyr">Copyright 2009 Ryanair Ltd.</div><input type="hidden" id="language" value=""><input type="hidden" id="culture" value=""><script type="text/javascript"> xtnv=document; xtsd=(window.location.protocol.indexOf('https:')==0?'https://logs152':'http://logc158'); xtsite=(window.location.hostname.indexOf('www.bookryanair.com')!=-1)?'384235':'385193'; xtn2="3"; xtpage="BookingProcess_IE::Select"; xtdi="1"; xt_multc="&x1=2&x2=20111002&x3=20111005&x4=AAR&x5=AGP&x6=1&x7=3"; if(window.xtparam!=null) window.xtparam+=xt_multc; else window.xtparam=xt_multc; </script><script type="text/javascript" src="js/Ryanair/xtcore.js"></script><noscript><img width="1" height="1" alt="" src="http://logc158.xiti.com/hit.xiti?s=384235&s2=3&p=BookingProcess_IE::Select&di=1"></noscript></div></div></div><div class="clr"></div><script type="text/javascript">
// var theForm = document.forms ['SkySales']; if(!theForm){ theForm = document.SkySales; } function _ doPostBack(eventTarget,eventArgument){ if(!theForm.onsubmit ||(theForm.onsubmit()!= false)){ theForm。 _EVENTTARGET.value = eventTarget; theForm .__ EVENTARGUMENT.value = eventArgument; theForm.submit(); } } //
function register(eventName, functionName)
{
if (eval(events[eventName]) == null)
{
events[eventName] = new Array();
}
events[eventName][events[eventName].length] = functionName;
}
function raise(eventName, eventArgs)
{
var undefined;
if (events[eventName] != undefined)
{
for (var ix=0; ix<events[eventName].length; ix++)
{
if ( eval(events[eventName][ix] + "(eventArgs)") == false)
{
return false;
}
}
}
return true;
}
// --></script><script language="javascript" type="text/javascript"><!--
function SelectFareEventArgs(marketIndex, fltIndex, classOfService)
{
this.paxFares = marketPaxFares['mkt'+marketIndex+'|flt'+fltIndex+'|'+classOfService];
this.marketIndex = marketIndex;
}
// --></script><script language="javascript" type="text/javascript"><!--
function AvailabilityInputFRSelectView_Validate(eventArgs)
{
var dots;
var sel;
var numOfMkts = 2;
var msg = new Array (
"", "",
0 );
for (var i = 1; i <= numOfMkts; i++)
{
sel = '';
dots = document['SkySales']["AvailabilityInputFRSelectView$market" + i];
if (dots == null)
{
alert("");
return false;
}
else if (dots[0]) // array
{
for (var j = 0; j < dots.length; j++)
{
if (dots[j].checked)
{
sel = dots[j].value;
break;
}
}
}
else // single
{
if (dots.checked)
{
sel = dots.value;
}
}
if (sel == '')
{
alert(msg[i-1]);
return false;
}
}
return true;
}
function displayPopUpFareRule(classOfService, fareRuleKeys, paxTypes)
{
var url = '/skysales/FareRules.aspx?fareRuleKeys=' + fareRuleKeys +'&class=' + classOfService + '&paxTypes=' + paxTypes;
if (!window.fareRuleWindow || fareRuleWindow.closed) // has not yet been defined
{
fareRuleWindow = window.open(url,'fareRule','width=250,height=251,toolbar=0,status=0,location=0,menubar=0,scrollbars=1,resizable=0');
}
else
{
fareRuleWindow.open(url,'fareRule','width=250,height=251,toolbar=0,status=0,location=0,menubar=0,scrollbars=1,resizable=0');
fareRuleWindow.focus();
}
}
// --></script><script language="javascript" type="text/javascript"><!--
function paxFare(paxTypeDesc,classDesc,fareRuleKey)
{
this.paxTypeDesc = paxTypeDesc;
this.classDesc = classDesc;
this.fareRuleKey = fareRuleKey;
}
var marketPaxFares = new Array();
marketPaxFares['mkt1|flt1|K'] = new Array();
marketPaxFares['mkt1|flt1|K'][0] = new paxFare('Adult','Regular Fare','K2LOW|K|FR|BND2||en-IE');
marketPaxFares['mkt2|flt1|C'] = new Array();
marketPaxFares['mkt2|flt1|C'][0] = new paxFare('Adult','No Taxes','C2LOW|C|FR|BND2||en-IE');
// --></script><script language="javascript" type="text/javascript"><!--
function AvailabilityInputFRSelectView_initialize()
{
} // end of Availability_initialize
// --></script><script type="text/javascript">
// var RegisterFunctionsWithEvents = new Array(register('Validate','AvailabilityInputFRSelectView_Validate'),register('WindowLoad','AvailabilityInputFRSelectView_initialize')); // //在common.js中定义 $(文件)。就绪(函数(){ WindowInitialize(); });
答案 0 :(得分:2)
TFHpple类没有search:
方法。您正在寻找的方法是searchWithXPathQuery:
。
答案 1 :(得分:1)
@Rocky这不是一个html。这是JavaScript,当你尝试执行xpath搜索时你没有得到nil。那是因为你想要的表不在下载的数据中,你可以在firefox中看到这个表浏览器的开发人员工具,这个表是在运行时使用上面的脚本创建的。你可以使用UIWebView并从方法stringByEvaluatingJavaScriptFromString执行JavaScript来获取webview加载的innerHTML,然后使用HPPLE。 抱歉我的英语不好。