Solved

issue with jquery load functionality

Posted on 2012-04-04
4
313 Views
Last Modified: 2012-04-20
i am in a problem where my page does not become editable unless and untill its all images and everthing does not appear. so to make that, i tried the image in one scenario to be load my an ajax call.

i just mad a small call like this

$("#refresh").html('<img src="/dummy.gif"'>');
$("#refresh").load('abc.cfm?id=#id#');
<div id="refresh"></div>

now the case is what i am trying page should separately and initially the dummy.gif should be shown and then a ajax call will be made immediately after it to load the actual image from the server which is taking time to show and display in the div.

just trying to separate the load taking image from actual page call so page should become editable while image could keep loading later.


but this approach is not working, as initially i load a page, it does not eve show an image nor it load the file

then i tried adding the setInterval function to the load method like this:

setInterval(function() {
           $("#refresh").load('abc.cfm?id=#id#');
},1000);

so by this it makes call every 1 sec and then it keeps on executing that specific code every one second. this approach works, but i am not sure if this is a feasible solution and it is making a call again and again, it will hit performance, so anyone can guide better

Thanks
0
Comment
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
  • 2
4 Comments
 
LVL 40

Expert Comment

by:gurvinder372
ID: 37805653
did you tried this approach?

<script>
$(document).ready(function(){
    $("#refresh").load('abc.cfm?id=#id#');
});
</script>

<div id="refresh"><img src="/dummy.gif"'></div>
0
 
LVL 16

Author Comment

by:Gurpreet Singh Randhawa
ID: 37805687
btw document.ready is already defined at the top of the Page but that is for another jquery function, so do i need to declare again
0
 
LVL 40

Accepted Solution

by:
gurvinder372 earned 500 total points
ID: 37805696
you don't have to declare it again, but simply call this jquery line in that document.ready() event

("#refresh").load('abc.cfm?id=#id#');

Idea is to make sure that element with id 'refresh' is loaded into the document before this jquery statement is executed
0
 
LVL 16

Author Comment

by:Gurpreet Singh Randhawa
ID: 37806056
well i have noticed few the document.ready is opening for some jquery functions and then it is closed, like in a page which is like a set of included page , some included pages have jquery, that has already declared document.ready but that closed it too

but also my concern is if i have 100 records the document.ready will run 100 times
0

Featured Post

Why Off-Site Backups Are The Only Way To Go

You are probably backing up your data—but how and where? Ransomware is on the rise and there are variants that specifically target backups. Read on to discover why off-site is the way to go.

Question has a verified solution.

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

Introduction Knockoutjs (Knockout) is a JavaScript framework (Model View ViewModel or MVVM framework).   The main ideology behind Knockout is to control from JavaScript how a page looks whilst creating an engaging user experience in the least …
How to build a simple, quick and effective accordion menu using just 15 lines of jQuery and 2 css classes
The viewer will learn the basics of jQuery, including how to invoke it on a web page. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery.: (CODE)
The viewer will learn the basics of jQuery including how to code hide show and toggles. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery…

707 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