JavaScript - Cache Persistence Problem
I've added a js scroller to a client's website, and they are able to edit the scroller text using a php text editor. The script is in a .txt file that is added to the homepage with a php include. Problem is, the edits don't show up right away, sometimes not until next day. I've had the same problem with Flash players (playlists are .txt files), and occassionally with image files, in both IE and FF. Browser continues to use the old file, even if cache is cleared, unless file is renamed. I've cleared cache, confirmed that the old file is gone, deleted the file entirely from the server, rebooted - pretty much everything. Tried onLoad="refresh()", no effect.
Anyone know what causes this, and how to fix it? Similar TutorialsHi All, I am facing a problem with popup windows. I have taken two Global variables var popupWindow=null; var popups = new Array(); In a function I am opening number of popup windows on click of a button and putting object of all the popups into an Array. popupWindow = window.open(url,'WinName','resizable=yes,scrollbars=1,status=yes,alwaysRaised=yes,width=750px,height =500px'); popups.push(popupWindow); I am using this Array to perform different operations like changes colors of popups and main window. But when I refresh the page all the object get lost is there any why to retain these object. We have a restriction that we can't use Frames. If anybody have an idea Please share with me. Thanks In advance. Hi i need to make a js programe that will replicate a direct mapped cache. I have been given an array with some random cache data. The programe just has to calculate the hit/miss ratio. Im not asking for the code but just help to get started. I think it will be a very short programme but have no clue where to start. Would someone tell me what functions i would need? The cache can be decimal or binary. Thanks. Hi, I have an onclick handler as: onClick="window.open ('test.cgi?action=testfile', 'testframe')" When clicked on the button for the first time, request is sent to webserver and target file for "testfile" action is getting loaded in frame testframe. But when i click for the second time, request is not sent to webserver and the cached entry is getting loaded. This issue is occuring only in IE but not in FF. I went to the cached data in c:\Documents and settings\<user>\...\Temporary Internet Files\ and i'm seeing that targetfile for test.cgi?action=testfile is getting stored and "last accessed" time stamp is updated but the "last checked" value is not getting updated (when ever i click on the button). But no issue is seen when the onclick handler is like below: onClick="document.location='test.cgi?action=testfile' I could not understand what exactly is the issue: Is it with Frames/window.open/Do i have to remove cached entries? etc... Can any one please help me out on how i can proceed with this... Please let me know if i'm not clear with above description. Thanks in advance... Hello, I'm not sure if this is the best forum for my question or not, but I'll explain what I'm doing and we'll see. I am trying to make a little easter egg hidden inside a web application and its going great except I'd like to hide my .gif files by changing their file extension to something like .dat instead so it won't be so obvious what they are. Basically all I really want to do is have an html image tag that points to a file who's extension is not gif, but really does contain gif content. (I want to mask the fact that the file is really a gif when looking at it in the directory listing.) So, my idea was I would point the <img src=""> tag's src attribute to a cgi script that could write out a Content-type: image/gif header and return the binary gif data. So, I did this and it worked great, but its really slow. (I output the image multiple times and animate it.) So, I thought I could maybe use Javascript to preload these cgi requests and cache them, but every attempt I've made to do this fails! It's like the browser doesn't want to cache the cgi requests. My method of attempting this was to create Image() objects in javascript and set their src attribute to my cgi script call and then set an onload to keep track of when they were all loaded. That seemed to work fine, but then when I try to display an image with the src tag equal to the cgi location (after they were all loaded) its like it goes and reads the code to pull it down again instead of using a cached copy because its really slow. So, then I thought, hey maybe I could just manually edit the binary content of the gif file (which has an extension like .dat) to also contain Content-type: image/gif\n\n embedded at the front of the file. So, I opened the binary file with a hex editor and inserted that text content at the front... but it didn't work. I had <img src="myfile.dat"/> Is there an easy way to make the browser recognize my gif file even if I don't use a gif extension? If not is there a way to preload and cache cgi responses with Javascript so that they don't keep reloading each time I refer to them? Any other ideas? Thanks.
Hi pals, I am really tired in this problem of event keyup. I given same in my keyup function like: $(document).ready(function () { alert("GGG"+parseInt(jQuery.browser.version)); //To display test value working $("#find_text").keyup(function(e) { if(e.which == 13) { alert('Enter key was pressed'); //enter Here alert("FFF"+parseInt(jQuery.browser.version)); //Here got Error } }); }); I got Error : jQuery is not defined alert("FFF"+parseInt(jQuery.browser.version)); I use keycode,which , but no help, It's Work nicely in Chrome Browser but not in FF. Please give a Solution reply ASAP, I am really Tired.The code enter the Condition But that jQuery part make error. Thankfully Anes P.A Hey guys! :-) How do i translate this javascript sentense in to "real working" javascript. PHP Code: if(a1 "its a box/this is just for info" = got a value written){ c1 also a box = disabled; } How do i write this so it works? My first thought was: PHP Code: if(document.GetElementById(a1).value = true){ document.GetElementById(c1).disabled = true; } But cant get it working - is there somebody there could help me? :-) //Morten Larsen // Denmark. I really don't even know if I'm posting this question in the right section. I am using javascript to make a drop-down menu for a website. I really don't have any experience with javascript. The problem I'm having is that when I go to the page, the drop down menu is already dropped down. If you then hover over it, it pulls up and then hover over it again and it drops back down. It works fine after the initial glitch. Didn't know if anyone had run into this problem or if I'm just being stupid, here is the code that I'm using. Thanks in advance for any help. <a href="/mainpage.html" onMouseOver="show()" onMouseOut="hide()" ><img src="pic.png" border="0" width="90" height="24"></a></br> <div id="div1"><a href="/notherpage.html" onMouseOver="show()" onMouseOut="hide()" ><img src="pic2.png"><br><a href="/notherpage2.html" onMouseOver="show()" onMouseOut="hide()" ><img src="pic3.png"><br><a href="/lastpage.html" onMouseOver="show()" onMouseOut="hide()" ><img src="pic4.png"></div> <script type="text/javascript"> function show(){ document.getElementById("div1").style.display="block"; } function hide(){ document.getElementById("div1").style.display="none"; } </script> Scratch that, its started working... oh well haha This is a program that calculates discriminant/number of solutions for a given quadratic equation.. it all works, but the number of solution field is not filled, so i think i did something wrong on my if else statements for it.. help! Code: <html> <head> <title>Untitled</title> </head> <script type="text/javascript"> <!-- Begin function quad(form) { a = form.a.value b = form.b.value c = form.c.value form.Dis.value = (b * b) - (4 * a * c) If(form.Dis.value > 0) { form.NumSol.value = 2 } Else;(form.Dis.value = 0) { form.NumSol.value = 1 } Else { form.NumSol.value = 0 } } // End --> </script> <body><center> <form name="form1"> <input type="text" name="a" size=5> x^2 + <input type="text" name="b" size=5> x + <input type="text" name="c" size=5> <input type="button" value="Calculate" onClick="quad(this.form)"> Discriminant: <input type="text" name="Dis" size = 7 /> Number of Solutions: <input type="text" name="NumSol" size = 7 /> </form> </center> </body> </html> this is coder javascript : textneu = textneu.replace(/haha/,"<img src='../images/21.gif'>"); Result: <img src='../images/21.gif'> why? i want result is : <img src='../images/21.gif'> I am creating a page which redirects automatically depending on the date. What I've done so far is below, but how would I make it go switch to exceeded_year.htm on 25th March 2011 for example? I will also include other dates and later put this page in a header frame and controlling the frame below so its constantly open. <html> <script type="text/javascript"> <!-- var currentTime = new Date() var date = currentTime.getDate() var month = currentTime.getMonth() + 1 var year = currentTime.getFullYear() if (year > 2011 ) {window.location = "exceeded_year.htm"; } else window.location="#" //--> </script> </html> hi i found some javascript on the internet that seemed to do what I wanted to achieve but cannot get it to work when the mouse is over the image it should show a bigger image. I've used the internet explorer debugger and there seems to be problem in the code, but i dont understand javascript programming. Im a php man myself. all the script is enclosed in this page http://www.web-malta.com/testimage.html if you put the mouse over the photo you will see there is an error on the page. hope someonbe can help. cheers Code: <html> <head> <!-- CIS 340 Final Webpage project Author: Jeffrey Faulkner Date: 04/27/2011 File name: Mailinglist.htm --> <title>Home</title> <link href="mario.css" rel="stylesheet" type="text/css" /> <script src="random.js" type="text/javascript"></script> <script src="ads.js" type="text/javascript"></script> <script type="text/javascript"> function valmail() { var lastName = document.Infoform.LastName.value; var firstname = document.Infoform.FirstName.value; var mi = document.Infoform.Mi.value; var address = document.Infoform.Address.value; var city = document.Infoform.City.value; var state = document.Infoform.State.value; var zip = document.Infoform.Zip.value; var phone = document.Infoform.Phone.value; var dob = new Date (document.Infoform.Dob.value); var res = document.Infoform.chkResident.value; var email = document.infoform.email.value; var cemail = document.infoform.cemail.value; var stuClass; var classChecked = false; var selectnews = document.getElementById('lstF_ID'); var advisor = selectnews.options (selectnews.selectedIndex).innerHTML var radio = document.Infoform.Class.value; for (var i=0; i < document.Infoform.Class.length; i++) { if (document.Infoform.Class[i].checked) { classChecked = true; stuClass = document.Infoform.Class[i].value; } } if (lastName == "") { alert ("Please enter a last name"); document.Infoform.LastName.select(); return false; } else if (firstname == "") { alert ("Please enter a first name"); document.Infoform.FirstName.select(); return false; }else if (address == "") { alert ("Please enter a address"); document.Infoform.Address.select(); return false; } else if (city == "") { alert ("Please enter a city"); document.Infoform.City.select(); return false; } else if (state == "") { alert ("Please enter a state"); document.Infoform.State.select(); return false; } else if (zip == "") { alert ("Please enter a zip"); document.Infoform.Zip.select(); return false; } else if (phone == "") { alert ("Please enter a phone"); document.Infoform.Phone.select(); return false; }else if (dob == "NaN") { alert ("Date of Birth is not valid, use MM/DD/YYYY to enter data"); document.Infoform.Dob.select(); return false; }else if (Class.checked == "false"){ alert ("No class selected"); return false; }else if (email != cemail){ alert ("emails are not the same."); return false; }else { alert ("Last name: " + lastName + "\n" + "First Name: " + firstname + "\n" + "mi: " + mi + "\n" + "Address: " + address + "\n" + "City: " + city + "\n" + "State: " + state + "\n" + "Zip: " + zip + "\n" + "phone: " + phone + "\n" + "Date of Birth: " + dob + "\n" + "Advisor " + advisor + "\n" + "classfication " + stuClass); return true; } } </script> </head> <body> <h5><script type="text/javascript"> rNumber = randInt(5); //generate a random integer from 1 to 5 rAd = adDescription(rNumber); // description of the random ad rLink = adLink(rNumber); // url of the random ad document.write("<a href=" + rLink + ">"); document.write("<img src='ad" + rNumber + ".jpg' alt='" + rAd + "' />"); document.write("</a>"); </script></h5> <hr /> <a href="Home.htm">Home</a> <a href="speedrun.htm">Speed Runs</a> <a href="History.htm">History</a> <a href="mailinglist.htm">Mailing List</a> <a href="games.xml">List of games</a> <hr /> <h5><h3>Mario Mailing List</h3></h5> <h5><h3><form name="Infoform" action="action%20marker" id="Infoform" onSubmit="valmail()"> <table align="center"> <tr> <td> Last Name:</td> <td><input type="text" name="LastName" size="20" /></td> <td></td> <td></td> <td><h4>Class:</h4></td> <td></td> </tr> <tr> <td> First Name:</td> <td><input type="text" name="FirstName" size="20" /></td> <td></td> <td><input type="radio" name="Class" value="Mail" /></td> <td>Mail<td> </tr> <tr> <td> MI:</td> <td><input type="text" name="Mi" size="5" /></td> <td></td> <td><input type="radio" name="Class" value="email" /></td> <td>Email</td> </tr> <tr> <td> Address:</td> <td><input type="text" name="Address" size="20" /></td> <td></td> <td><input type="radio" name="Class" value="email" /></td> <td>phone</td> </tr> <tr> <td> City:</td> <td><input type="text" name="City" size="20" /></td> <td></td> <td><input type="radio" name="Class" value="text" /></td> <td>text</td> </tr> <tr> <td> State:</td> <td><input type="text" name="State" size="5" /></td> <td></td> <td><input type="radio" name="Class" value="any" /></td> <td>any</td> </tr> <tr> <td> ZIP Code:</td> <td><input type="text" name="Zip" size="20" /></td> <td></td> <td></td> <td></td> </tr> <tr> <td> Phone:</td> <td><input type="text" name="Phone" size="20" /></td> <td></td> <td><input name="chkResident" type="checkbox" /></td> <td> All the above</td> </tr> <tr> <td> Date of Birth:</td> <td><input type="text" name="Dob" size="20" /></td> <td></td> <td>What news do you want to here about?</td> <td><select size="1" name="lstF_ID"> <option selected="selected" value="1">New speed runs</option> <option value="2">upcoming games</option> <option value="3">New bugs found</option> <option value="4">new speed runs</option> <option value="5">All</option> </select value="1"></td> </tr> <tr> <td> EMail:</td> <td><input type="text" name="email" size="20" /></td> <td></td> <td></td> <td></td> </tr> <tr> <td> confirm email:</td> <td><input type="text" name="cemail" size="20" /></td> <td></td> <td></td> <td></td> </tr> <tr> <td></td> <td><input type="submit" value="Submit" /></td> </tr> </table> </form></h3></h5> </body> <hr /> <address> All information taken from mario wiki </address> </html> I have looked at this for an hour and i can not find anything wrong hi at all!!! I'm new in this forum. I have a problem and I need your experience in js! I have one page in html, but that is build only with js and css3. My problem is: The page generate in automatic one template every time u click one voice in menu, but the name of the page is always the same. When I click "Back" for visualize post page, I cant visualize because I have only one page! My question is: How can I create a function to manage "back page" if I have always only one page? Thanks u Reply With Quote 01-07-2015, 09:48 PM #2 Old Pedant View Profile View Forum Posts Supreme Master coder! Join Date Feb 2009 Posts 28,311 Thanks 82 Thanked 4,754 Times in 4,716 Posts I am afraid that you are giving us *WAY* too little information for us to even guess at an answer. Show your code. Or, better, show us a live URL that exhibits the problem. For help I m putting it all together ..copy and paste and run ... I used 2 browsers IE and mozilla... you fill find the problem ...I know some one will definatly solve my problem ..... Code: <script type="text/javascript" language="JavaScript"><!-- function ManageTabPanelDisplay() { var idlist = new Array('tab1focus','tab2focus','tab3focus','tab4focus','tab1ready','tab2ready','tab3ready','tab4ready','content1','content2','content3','content4'); if(arguments.length < 1) { return; } for(var i = 0; i < idlist.length; i++) { var block = false; for(var ii = 0; ii < arguments.length; ii++) { if(idlist[i] == arguments[ii]) { block = true; break; } } if(block) { document.getElementById(idlist[i]).style.display = "block"; } else { document.getElementById(idlist[i]).style.display = "none"; } } } //--></script> <style type="text/css"> .tab { font-family: verdana,sans-serif; font-size: 12px; width: 100px; height:30px; white-space: nowrap; text-align: center; border-style: solid; border-color: #9a9a9a; border-left-width: 1px; border-right-width: 1px; border-top-width: 1px; border-bottom-width: 0px; padding-top: 5px; padding-bottom: 5px; padding-left:3px; padding-right:3px; cursor: pointer; } .tabhold { background-color:#9a9a9a; /*color of menu #666666*/ color: white; } .tabfocus { background-color:white; color: #666666; } .tabcontent { font-family: sans-serif; font-size: 12px; height: 320px; border-style: solid; border-color: #9a9a9a; border-width: 1px; padding-top: 15px; padding-left: 10px; padding-right: 10px; overflow-y:scroll;overflow:-moz-scrollbars-vertical; } </style> <table border="0" cellpadding="0" cellspacing="0" > <tr > <td> <div id="tab1focus" class="tab tabfocus" style="display:block; padding-top:10px; height:39px;" > Overview </div> <div id="tab1ready" class="tab tabhold" style="display:none; padding-top:10px;height:39px;"> <span onclick="ManageTabPanelDisplay('tab1focus','tab2ready','tab3ready','tab4ready','content1')" >Overview </span> </div> </td><td > </td><td> <div id="tab2focus" class="tab tabfocus" style="display:none;"> Dimensions <br /> & Details </div> <div id="tab2ready" class="tab tabhold" style="display:block;"> <span onclick="ManageTabPanelDisplay('tab1ready','tab2focus','tab3ready','tab4ready','content2')">Dimensions <br /> & Details</span> </div> </td><td > </td><td> <div id="tab3focus" class="tab tabfocus" style="display:none;"> Quantity <br /> & Constructions </div> <div id="tab3ready" class="tab tabhold" style="display:block;"> <span onclick="ManageTabPanelDisplay('tab1ready','tab2ready','tab3focus','tab4ready','content3')">Quantity <br /> & Constructions</span> </div> </td> <td > </td><td> <div id="tab4focus" class="tab tabfocus" style="display:none;"> Customization <br /> Options </div> <div id="tab4ready" class="tab tabhold" style="display:block;"> <span onclick="ManageTabPanelDisplay('tab1ready','tab2ready','tab3ready','tab4focus','content4')">Customization <br /> Options </span> </div> </td> <td width="100%"> </td><td> </tr> <tr > <td colspan="8" > <div id="content1" class="tabcontent" style="display:block;"> content1 </div> <div id="content2" class="tabcontent" style="display:none;"> content2 </div> <div id="content3" class="tabcontent" style="display:none;"> content3 </div> <div id="content4" class="tabcontent" style="display:none;"> content4 </div> </td></tr> </table> please help thanks Hi, I have html variable as below: html += "<div class='quickSearchResultDivUnselected' style='width:" + divWidh + "px;max-width:" + divWidh + "px'><a href='#' OnClick='javascript:test('" + title + "')>" + title + "</a></div>"; The problem is with OnClick='javascript:test('" + title + "')>". How to make this link as <a OnClick='javascript:test("VALUE")'></a>, because now as result it looks like this and it doesn't work: <a OnClick='javascript:test('value')'></a>; So the problem is with ' and ". How to make it correctly in this long line of html variable ? Please help. I'm working with this form which has js calendar. unfortunately, I can't get the calendar to work onclick. It produces the following error: Code: Uncaught SyntaxError: Unexpected token can't make out the error. Not sure if this is related to another onclick function. Here is the actual code: Code: <form name='PaymentForm' onsubmit='return ValidatePaymentForm();' action='updatebalancedue.php' method='post'> <input type=\"hidden\" name=\"edit_sel_id\" value=\"$sel_id\"> <div id=\'pmt_header\'><center><table class=\'tablestyle2\' width=90% cellpadding=2 cellspacing=0> <tr valign='top'> <td style=\'border:1px solid #cccccc;\' width=\"28%\" align=\"justify\"> <table class=\'tablestyle_inner\' width=\"170\"> <tr> </td> </tr> <tr><td bgcolor='#000000'><font color='#FFFFFF' class='label'>Payment Received Date:</td> </tr> </table> <input type='text' value='$date' readonly name='theDate' size='11'><input type='button' class='NonPrintable' value='Calendar' onclick='displayCalendar(this.form.theDate,'yyyy/mm/dd',this)'> </td> <td style='border:1px solid #cccccc;' width=\"35%\"> <table class='tablestyle_inner' width='607'> <tr><td valign='top'class='label' width='110'>Date of Invoice</td> <td width='196'><span id='_PayType_sel'><input name='$date_on_invoice' value='$date_on_invoice' disabled='true' style='float: left' valign='top'></td> <td valign='top' width='106'>Client ID: </td><td valign='top'> <input name='$clientID' value='$clientID' disabled='true' style='float: left'></span></td> <tr><td class='label' width='110'>First Name:</td><td width='196'><input type='text' size='22' maxlength='50' value='$firstname' disabled='true' style='float: left'></td><td valign='top'>Last Name:</td><td valign='top'><input type='text' size='22' maxlength='50' value='$lastname' disabled='true' name='T1' style='float: left'></td> </tr> </table> </td> <td style='border:1px solid #cccccc;' width='35%' align='right'> <table class='tablestyle_inner'> <tr><td bgcolor='#000000'><font color='#FFFFFF' class='label' align='left'>New Bal.:</td></tr><tr><td><input name='dollarsymbol3' size='1' readonly style='border:0px;' value='$'><input id='amount' name='newbalance' readonly style='color: #EE0000' size='8' maxlength='16' value='0.00'> <!--<input type='text' name='newbalance' disabled='true' size='16' maxlength=\"18\" value='$0.00'--></td> </tr> </table> <td style='border:1px solid #cccccc;' width='35%' align='right'> <table class='tablestyle_inner'> <tr><td bgcolor='#000000'><font color='#FFFFFF' class='label' align=\"left\">Payment Reference:</td></tr><tr><td><input type='text' name='paymentref' size='16' maxlength='18' value='$RNO'</td> </tr> </table> </table></center> <br></div> <div id='items_table'><center> <table class='tablestyle' colspan=7 width='89%' cellpadding=2 cellspacing=0> <tr> <td style='border:1px solid #cccccc;' width=' 15%' class='tableheader' bgcolor='#000000'><font color='#FFFFFF'> Invoice Number</td> <td align='center' style='border: 1px solid #cccccc;' width=' 15%' class='tableheader' bgcolor='#000000'><font color='#FFFFFF'>Service Description</td> <td style='border: 1px solid #cccccc;' width=' 15%' class='tableheader' bgcolor='#000000'><font color='#FFFFFF'>Balance Due</td> <td style='border: 1px solid #cccccc;' width=' 15%' class='tableheader' bgcolor='#000000'><font color='#FFFFFF'>Payment</td> <td style='border: 1px solid #cccccc;' width=' 15%' style='border:1px solid #cccccc;' width=' 15%'class='tableheader' bgcolor='#000000'><font color='#FFFFFF'>Payment Type</td> </tr> <tr> <td valign='top' style='border-left: 0px solid #cccccc;' width=' 15%'><input type='text' name='$invoicenum' disabled='true' size='12' maxlength='10' value='$invoicenum' class='combo3' rel='code_id' title=''> </td><td valign='top' style='border-right: 0px solid #cccccc;' width=' 15%' ><span id='_code_id_sel'> <!-- the line below serves to auto adjust the textarea box in accordance with the box's content. The class allows the box to expend to 1000 this works with two files jquery.textarea-expander.js and jquery-1.3.2.min.js --> <textarea name='mytextarea' id='mytextarea' rows='3' cols='60' disabled='true'class='expand10-100'>$servicedesc</textarea> <!--<textarea name='servicedesc' cols='30' rows='2' disabled='true' >$servicedesc</textarea></span>--> </td> <input type=\"hidden\" name=\"dimension2_id\" value=\"0\"> <td valign='top' style='border-left: 0px solid #cccccc;' width=' 15%' align='left'> <input name='dollarsymbol2' size='1' readonly style='border:0px;' value='$'><input id='amount' name='balance' size='12' disabled='true' value='$new_bal' onChange='updatesum()'> <!--<input class='amount' type=\"text\" name='balance' disabled='true' size=\"15\" maxlength=\"15\" dec=\"2\" value='$Balancedue'>--></td> <td valign='top' style='border-left: 0px solid #cccccc;' width=' 15%' align='left'> <input name='dollarsymbol1' size='1' readonly style='border:0px;' value='$'><input id='amount' name='paymentamount' size='12' style='color: #71C671' value='0.00' onChange='updatesum()'></td> <td valign='top' style='border-left: 0px solid #cccccc;' width=' 15%' ><span<select autocomplete='on' name='paymenttype' ><OPTION>Select One <OPTION>Cash <OPTION>Check <OPTION>Visa <OPTION>Master Card <OPTION>AMEX <OPTION>Discover <OPTION>Other </select></span></td> </tr> </table></center> </div> <br><table align='center'><tr><td >Memo</td><td><textarea STYLE='display:inline' name='memo' cols='50' rows='3'></textarea></td> </tr> </table> <br><br><center><input type='button' class='NonPrintable' value='Select Another Record' ONCLICK='history.go(-1)'> <input type='submit' name='submit' class='NonPrintable' value='Record Payment'> <input type='button' class='NonPrintable' onClick='window.print()' value='Print' /> </center> </p> </form>"; I'm using the form within a php code. This is my script section: Code: <script type="text/javascript" src="../../js/jquery-1.3.2.min.js"></script> <script type="text/javascript" src="../../js/jquery.textarea-expander.js"></script> <script> function ValidatePaymentForm() { var paymentamount = document.PaymentForm.paymentamount; var paymenttype = document.PaymentForm.paymenttype; if (paymentamount.value == "0.00") { window.alert("Sorry, no Payment Amount is indicated!"); paymentamount.focus(); return false; } if (paymenttype.value == "Select One") { window.alert("Indicate form of payment!"); paymenttype.focus(); return false; } return true; } </script> <!--script for calendar begins--> <link type="text/css" rel="stylesheet" href="dhtmlgoodies_calendar.css?random=20051112" media="screen"></LINK> <SCRIPT type="text/javascript" src="dhtmlgoodies_calendar.js?random=20060118"></script> <!--script for calendar ends--> The calendar code is highlighted in red. any assistance is appreciated! Ok, I today installed IE9 and now my site has lost the main menu. The problem lies in my application.js file code below, any ideas on what may have caused this? When debugging in VS2010 it throws therror at the line prettyPrint(); with the error prettyPrint is underfined? I havent changed anything other than move browser from ie8 to ie9 Code: var submitting = false; $(function(){ $.ajaxSetup({ type: 'POST', dataType: 'json', timeout: 7500, error: function(x, s, t) { //alert(error_message); }, complete: function(){submitting = false;} }); }); $(window).load(function () { // Prittify prettyPrint(); }); /** * toggleLink */ (function($){ $.fn.toggleLink =function (options) { var options = $.extend({ visible: 'view source', invisible: 'hide source' }, options); return this.each(function(i, e) { $(e).click(function (event) { event.preventDefault(); var $this = $(this); var obj = $('#' + $this.attr('rel')); if (obj.is(':visible')) { obj.hide(); $this.text(options.visible); } else { obj.show(); $this.text(options.invisible); } }); }); } })(jQuery); /** * toggleLinkAll */ (function($){ $.fn.toggleLinkAll =function (options) { var options = $.extend({ visibleAll: 'view all sources', invisibleAll: 'hide all sources', visible: 'view source', invisible: 'hide source', children: '#things a.showSource' }, options); return this.each(function(i, e) { $(e).click(function (event) { event.preventDefault(); var $this = $(this); var v = $this.data('visible'); var visible = (typeof v == 'undefined' || v == true); $(options.children).each(function () { var $t = $(this); var id = $t.text((visible) ? options.invisible: options.visible).attr('rel'); if (visible) { $('#' + id).show(); } else { $('#' + id).hide(); } }); if (visible) { $this.text(options.invisibleAll).data('visible', false); } else { $this.text(options.visibleAll).data('visible', true); } }); }); } })(jQuery); /** * paginate */ (function($){ $.fn.paginate =function (options) { var options = $.extend({ type: 'GET', dataType: 'html', timeout: 7000, success: null }, options); return this.each(function(i, e) { $(e).click(function() { var $this = $(this); $this.parent('div') .html('<img src="/images/loading.gif" class="valign_middle"/> ' + '<span class="green">loading...</span>'); options.url = $this.attr('href'); $.ajax(options); return false; }); }); } })(jQuery); /** * Destroyer */ (function($){ $.fn.destroyer =function (options) { var options = $.extend({ progressMessage: 'deleting...', completeMessage: 'deleted!', errorMessage: 'Sorry, an error occured.' }, options); var destroy = function() { var $this = $(this); var token = $this.attr('rel').split('_'); var type = token[0]; var key = token[1]; var msg = 'Sure you want to delete this ' + type + '? There is NO undo!'; if (!window.confirm(msg)) return false; var parent = $(this.parentNode); var container = $('#' + type + '_' + key); $.ajax({ type: 'POST', url: '/' + type + '/' + key + '/delete/', beforeSend: function(){ parent.html(options.progressMessage + '...'); }, dataType: 'json', data: {_method: 'delete'}, timeodut: 6000, success: function(obj){ if(obj.error){alert(options.errorMessage);} else if(obj.success){ if (container.length > 0) { container.hide(); } else if (obj.redirect) { window.location = obj.redirect; } else {window.location = '/';} } else { alert(options.errorMessage); } }, error: function () { alert(options.errorMessage); } }); return false; } return this.each(function(i, e) { $(e).click(destroy); }); } })(jQuery); Hi, so I thought I could mash two bits of code together like this: Code: <div><label for="or">From:</label> <select name="or" style="width:200px; float: right" id="or" onchange="populate(this)"> <option value="Choose">Select your starting point</option> <option value="Guatemala">Guatemala City</option> <option value="Xela">Quetzaltenango</option> <option value="Antigua">Antigua</option> <option value="Rio Dulce">Rio Dulce</option> <option value="Coban">Coban</option> </select></div> <div> <label for="de">To:</label> <select name="de" style="width:200px; float: right" id="de"></select> </div> <div> <br> <input type="button" onclick="searchLocations()" value="Show route" /> </div> </div> </div> </div> <script type="text/javascript"> if (GBrowserIsCompatible()) { var gpolylines = []; function populate(o) { d=document.getElementById('de'); if(!d){return;} var mitems=new Array(); mitems['Choose']=['']; mitems['Guatemala']=['Select Destination','Antigua','El Rancho junction','San Pedro La Laguna','Panajachel','Coban','Rio Hondo','Chiquimula','Esquipulas','Copan Ruinas (Honduras)','La Ruidosa junction','Rio Dulce','Flores (via Rio Dulce)','Puerto Barrios','Flores (via Coban)','Quetzaltenango']; mitems['Xela']=['Select Destination','Guatemala City','Antigua','Chichicastenango','Huehuetenango','Panajachel','San Pedro La Laguna']; mitems['Antigua']=['Select Destination','Guatemala City','Quetzaltenango','Escuintla','Monterrico','San Pedro la Laguna','Panajachel','Chichicastenango']; mitems['Rio Dulce']=['Select Destination','Guatemala City','Flores','Lanquin','Coban','Puerto Barrios']; mitems['Coban']=['Select Destination','Lanquin','Rio Dulce','Laguna Lachua NP','Flores']; d.options.length=0; cur=mitems[o.options[o.selectedIndex].value]; if(!cur){return;} d.options.length=cur.length; for(var i=0;i<cur.length;i++) { d.options[i].text=cur[i]; d.options[i].value=cur[i]; } } function searchLocations() { var found = false; var from = document.getElementById('or').value; var to = document.getElementById('de').value; for (var a = 0; a < gpolylines.length; a++) { if (gpolylines[a].myname.toLowerCase() == to.toLowerCase() && gpolylines[a].mycategory.toLowerCase() == from.toLowerCase()) { found = true; gpolylines[a].show(); } } if ( ! found ) alert("No matches found. Please check your spelling or refine your search."); } the first bit, which populates the select boxes works fine, as you can see here but the second bit (the searchLocations function) is giving me a bit more trouble. What it's supposed to be doing is saying that if there's a polyline whose category xml attribute matches the text from the 1st select box AND whose name attribute matches the 2nd select box, it should be shown. The methods have worked in the past, there are no errors reported - the only problem is I get the alert regardless of which option I am selecting. I suspect that the problem is in the if (gpolylines[a].myname.toLowerCase() == to.toLowerCase() && gpolylines[a].mycategory.toLowerCase() == from.toLowerCase()) line, as it's the only one that I really came up with on my own... or can I not get the "or" and "de" elements in that way? Or is it something else entirely? thanks in advance for any suggestions... |