Solved

Ajax not working in IE7, works in IE8 and firefox

Posted on 2011-03-12
10
1,119 Views
Last Modified: 2012-05-11
Experts,
I added an Ajax script to my website.
http://www.viewpts.com/sports3.php

When viewed in IE8 or Firefox, clicking the Thumbs up or Thumbs Down icons will result in the user casting a vote instantly via ajax.  This works correctly.

When I do this in IE7, the vote gets cast but only after the page refreshing.
I also notice a Javascript Error in IE7 but I can't pinpoint exactly what it is.
I'm not sure if the issue is related.

I've also read this article on Experts Exchange, but I'm unsure of which variables I would change in my code:
http://www.experts-exchange.com/Programming/Languages/Scripting/AJAX/A_3565-Ajax-and-IE7-problems.html?sfQueryTermInfo=1+10+30+ajax+ie7+ie8+work

Any ideas?

Thanks,
-dsg
<?php
session_start();

include_once("/home/allgo5/public_html/viewpts/functions.php");
include_once("/home/allgo5/public_html/viewpts/thumbsup/init.php");
include_once("/home/allgo5/public_html/viewpts/db.php");

dbConnect('allgo5_viewpts');
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns:fb="http://www.facebook.com/2008/fbml">
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<?
echo ThumbsUp::css();
echo ThumbsUp::javascript();

?>
<title>View Points</title>
<meta http-equiv=Content-Type content=application/xhtml+xml; charset=UTF-83 />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<link href="style.css" rel="stylesheet" type="text/css" />
<link href="layout.css" rel="stylesheet" type="text/css" />

</head>
  	<?

    $sz = "Select * From SportsStories where ViewPointQuestion IS NOT NULL order by PostDate desc LIMIT 12";  
	$rz=mysql_query($sz) or die(mysql_error());
		while($az=mysql_fetch_array($rz))
		{
     	$th_id = "SportsID" . $az[NewsID];	
		echo "<li><span><b><TABLE width='420'><TR><TD><A HREF='" . $az[Link] . "'Target=Blank>"  . $az[Title] . "</A></TD></TR><TR><TD>" . $az[ArticleDate] . "</TD></TR><TR><TD width=360'></b><STRONG>" . $az[ViewPointQuestion] . "</STRONG></TD><TR><TD>";
		
//		if ($me) {
		
		echo ThumbsUp::item($th_id)->template('thumbs_up_down');
		
//		}
//		else
//		{
//		echo "<P><I>Login to vote on this question/story!</I>";	
//		}
		
		echo "</TD></TR><TR><TD>";
		?>
      <iframe src="http://www.facebook.com/plugins/comments.php?href=viewpts.com/article.php?id=<?=$az[NewsID]?>&linkTarget=blank&permalink=1" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:130px; height:16px;" allowTransparency="true"></iframe> 

        <?
		echo "<p></TD></TR></TABLE></span></li>";
		echo "<HR>";
		}
	?>
</body>
</html>

Open in new window

0
Comment
Question by:dsg138
  • 4
  • 4
  • 2
10 Comments
 
LVL 29

Expert Comment

by:Badotz
Comment Utility
>>I also notice a Javascript Error in IE7 but I can't pinpoint exactly what it is.

hmmm...that might be important? How do you know an error has occurred? Can you tell us anything about the error?
0
 

Author Comment

by:dsg138
Comment Utility
In the left corner of the brower, I get the Yellow warning icon.
Line: 2
Char: 715
Error:  Expected Identifier, String or Number
Code: 0
0
 
LVL 29

Expert Comment

by:Badotz
Comment Utility
Can you show us lines 1 through 10?
0
 

Author Comment

by:dsg138
Comment Utility
All of the code in this page is posted above.  Thanks!
0
 
LVL 29

Expert Comment

by:Badotz
Comment Utility
Then please, show us the 715th character of line 2.
0
How your wiki can always stay up-to-date

Quip doubles as a “living” wiki and a project management tool that evolves with your organization. As you finish projects in Quip, the work remains, easily accessible to all team members, new and old.
- Increase transparency
- Onboard new hires faster
- Access from mobile/offline

 

Author Comment

by:dsg138
Comment Utility
I can't.  Line 2 is session_start().  And there isn't 715 characters.
I don't know how to troubleshoot this. That's why I'm posting here.  This message doesn't make sense to me.

Again, the function works but refreshes the page instead of letting Ajax doing the update.
Only an issue in IE7.
0
 
LVL 29

Expert Comment

by:Badotz
Comment Utility
What is line 2 from the first JavaScript file in your page?
0
 
LVL 12

Accepted Solution

by:
zappafan2k2 earned 500 total points
Comment Utility
In the file init.min.js.php
near the code
spinner_large_red.gif" />',};switch(template)

Open in new window

You have a comma followed by a brace:
,}

Open in new window

Try getting rid of the comma.  If that doesn't fix it, then you'll probably have to un-minify your code to see what's really going on.
0
 

Author Closing Comment

by:dsg138
Comment Utility
Perfect!  This fixed both the Javascript issue and the Ajax issue.

I can't believe it was ONE COMMA!

Many thanks!

-dsg
0
 
LVL 12

Expert Comment

by:zappafan2k2
Comment Utility
When I was in college, my teacher told me that a person was almost killed by a medical device because of a misplaced semicolon.  

Anyway, glad to hear it's working.
0

Featured Post

Maximize Your Threat Intelligence Reporting

Reporting is one of the most important and least talked about aspects of a world-class threat intelligence program. Here’s how to do it right.

Join & Write a Comment

These days socially coordinated efforts have turned into a critical requirement for enterprises.
This article discusses four methods for overlaying images in a container on a web page
Learn how to match and substitute tagged data using PHP regular expressions. Demonstrated on Windows 7, but also applies to other operating systems. Demonstrated technique applies to PHP (all versions) and Firefox, but very similar techniques will w…
The viewer will learn how to count occurrences of each item in an array.

762 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

Need Help in Real-Time?

Connect with top rated Experts

13 Experts available now in Live!

Get 1:1 Help Now