I’m having a problem..
Actually I do have an issue when sending a value from a child page to the parent page.
I’m actually loading a page via JQuery and that page is getting refreshed to display new results, but one of these problems is that the function from the parent page doesn’t get called from the child page.
Although this works perfect on Google Chrome, Opera and Safari, it doesn’t seem to work on Firefox.
I heard Firefox doesn’t manage events the same way as Safari or Google Chrome does?
I’ve been searching on answers for this but I couldn’t find anything pretty much..
Alright, here’s what I’m doing:
The child page calls another file which has all the functions that make my site work, this is what should trigger the function:
$like = "<a href='$comment_poster' id='$msgid' class='like'
onclick='parent.likecomment(this);'>Like</a>";
echo "$like";
And this is the function that gets fired from the onclick event which is located in the parent page (the function is in the parent page the onclick is in the child page):
This function is the one that receives the id from the child page to later on add the value to the database.
function likecomment(commentID)
{
event.preventDefault();
var likeid = commentID.id;
var author = ($(commentID).attr('href'));
// forming the queryString
var data = 'likeid='+ likeid + '&author=' + author;
if(likeid)
{
// ajax call
$.ajax({
type: "POST",
url: "likeprofmessage.php",
data: data,
beforeSend: function(html)
{
$(".word").html(likeid);
},
success: function(html){
$("#resultsprofcomments").fadeIn('slow');
$('#profcommentsdiv').load('showprofmessages.php?vprofile=<?php echo $row['1'];?>').fadeIn("slow");
$("#resultsprofcomments").append(html);
}
});
}
}
I’ve tried the Firefox console and I’ve received the error: event is undefined so this should be a problem on how Firefox manages events.
Again, any help is appreciated, thank you very much.
I think the following will work as long as you set the onclick handler inline in your HTML (as you did in your example):
For event handlers not set inline in HTML, the standards compliant browsers (including FF) should automatically pass the event object as a parameter to your handler function. IE, up to version 8, anyway, uses a different event model and lets you reference
eventdirectly – really it iswindow.eventbut generally as with most window properties it works even if you omitwindow..So if you assign your click handler on document ready (or onload) you can do this: