?
Solved

Where to find a code for responseHTML

Posted on 2010-11-17
13
Medium Priority
?
781 Views
Last Modified: 2012-05-10
Dear Expert,

Do you know where I can find the function or javascript library  of responseHTML in other webiste ?
so I can access it through DOM to extract data in other HTML file like
 document.getElementById('test').innerHTML =xmlhttp.responseHTML.getElementByID("......)
that is similar to  extract xml data from xmlhttp.responseXML

I got one but not complete at http://www.ohjelmointirengas.fi/Ohjelmointi/responseHTML.txt

Please help and advise

Duncan
0
Comment
Question by:duncanb7
  • 6
  • 6
13 Comments
 
LVL 43

Expert Comment

by:Rob
ID: 34161702
I've used mootools but JQuery will do the same for you.  the following is the ajax request object using the mootools library.  When the data has been received you can see I load an htm page and then access elements within it using simple css selectors.


		myRequest = new Request({
			url: "sales1.htm",
			noCache: true,
			link: 'ignore',
			method: 'get',
			async: false,
			onSuccess: function(responseText, responseXML) {
				$('my_content').innerHTML = responseText;
				alert($('my_content').getElement('#Book1_25322').getElement('img').src);
			}
		});

Open in new window

0
 
LVL 43

Expert Comment

by:Rob
ID: 34161703
alert($('my_content').getElement('#Book1_25322').getElement('img').src);

Open in new window


is the part i'm talking about
0
 
LVL 75

Expert Comment

by:Michel Plungjan
ID: 34162392
However you will not be able to ajax to another website unless for IE it is in trusted sites and for Fx it implements Cross Origin Resource Sharing
0
VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

 
LVL 43

Expert Comment

by:Rob
ID: 34162961
That's right, the html file has to reside in the same domain unless you want to use the additional Request.JSONP package from mootools
see: http://www.clientcide.com/wiki/cnet-libraries/06-request/00-jsonp

Btw You've answered this question in your other question you have open: http://www.experts-exchange.com/Programming/Languages/Scripting/JavaScript/Q_26622228.html?cid=1749

that is the right code.  I would focus on using the Request.HTML and the onSuccess function() to obtain the responseHTML content
0
 
LVL 13

Author Comment

by:duncanb7
ID: 34164345
Dear Taqit,

it is not wokring and no response for my following try , and your index.html
in other  thread is working for sales1.htm so I put this following code  file in the same directory
under screen_update

And I want to know which word in your is code  calling mootools libray , OnSucess, Right ?
And  I found some ajax example   is working if I put the code file at D: drive
and some is not like yours.   Actually, xmlhttp is internet stuff, so it cannot access file system
on PC, RIght? But I don't know why some ajax example is also working on D: drive.
 
Duncan

Please advise

Duncan

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/mootools/1.3.0/mootools-yui-compressed.js"></script>

<script type='text/javascript'>

function main() {
myRequest = new Request({
			url: 'sales1.htm',
			noCache: true,
			link: 'ignore',
			method: 'get',
			async: false,
			onSuccess: function(responseText, responseXML) {
				$('my_content').innerHTML = responseText;
				alert($('my_content').getElement('#Book1_25322').getElement('img').src);
			}
		});
}

</script>

<input type='button' onclick="main();" value='click me' />
</head>
</html>

Open in new window

0
 
LVL 13

Author Comment

by:duncanb7
ID: 34164547
 alert($('my_content').getElement('#Book1_25322').getElement('img').src);
has javascript error

0
 
LVL 13

Author Comment

by:duncanb7
ID: 34164668
alert($('my_content').getElementsById('Book1_25322').getElementsBYTagName('img').src);

It shoud be working but not work, why ? even I also put back <div id="my_content">loading</div>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/mootools/1.3.0/mootools-yui-compressed.js"></script>

<script type='text/javascript'>

function main() {
myRequest = new Request({
			url: "http://www.e-hftrade.com/mootools/screen_update/sales1.htm",
			noCache: true,
			link: 'ignore',
			method: 'get',
			async: false,
			onSuccess: function(responseText, responseXML) {
				$('my_content').innerHTML = responseText;
				alert($('my_content').getElementsById('Book1_25322').getElementsBYTagName('img').src);
			}
		});
}

</script>

<input type='button' onclick="main();" value='click me' />
<div id="my_content">loading</div>
</head>
</html>

Open in new window

0
 
LVL 43

Accepted Solution

by:
Rob earned 2000 total points
ID: 34168064
all you are doing above is creating a mootools Request object everytime you run "main()".  nothing happens because you're not asking it to do anything.  you need to tell the request to send()
function main() {
myRequest = new Request({
			url: "http://www.e-hftrade.com/mootools/screen_update/sales1.htm",
			noCache: true,
			link: 'ignore',
			method: 'get',
			async: false,
			onSuccess: function(responseText, responseXML) {
				$('my_content').innerHTML = responseText;
				alert($('my_content').getElementsById('Book1_25322').getElementsBYTagName('img').src);
			}
		}).send();
}

Open in new window

0
 
LVL 43

Expert Comment

by:Rob
ID: 34168103
the "Request" is part of mootools.  without mootools you would have to determine which ajax object to use... see here:
http://www.w3schools.com/ajax/tryit.asp?filename=tryajax_first

the onSuccess is an Event that happens when the Request is completed and receives data back

AJAX = Asynchronous JavaScript and XML.

AJAX is not a new programming language, but a new way to use existing standards.

AJAX is the art of exchanging data with a server, and update parts of a web page - without reloading the whole page.


Of course it will work with D: but as long as you are running it through a local webserver like http://localhost
0
 
LVL 13

Author Comment

by:duncanb7
ID: 34168127
Dear taqit,
Okay thanks, I will remember you, now the big question is at following link , please help to review
http://www.experts-exchange.com/Programming/Languages/Scripting/AJAX/Q_26625196.html.
I don't know why I click may time of the button of the ajax code from wc3 is always
displaying the past data. SO the code is only worked for first time when I open my IE windows



I will credit all the thread to you .

DUncan
0
 
LVL 13

Author Closing Comment

by:duncanb7
ID: 34168170
thanks for all of you to reply

Please switch to new thread,
I get big problem  before using
anything mootools

0
 
LVL 43

Expert Comment

by:Rob
ID: 34168258
I believe it is because IE caches ajax requests
0

Featured Post

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

A while back, I ran into a situation where I was trying to use the calculated columns feature in SharePoint 2013 to do some simple math using values in two lists. Between certain data types not being accessible, and also with trying to make a one to…
Q&A with Course Creator, Mark Lassoff, on the importance of HTML5 in the career of a modern-day developer.
The viewer will the learn the benefit of plain text editors and code an HTML5 based template for use in further tutorials.
This video shows how to quickly and easily deploy an email signature for all users in Office 365 and prevent it from being added to replies and forwards. (the resulting signature is applied on the server level in Exchange Online) The email signat…
Suggested Courses

864 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question