I have one problem on my project. I would like access my function when iframe is over, but i try search how i can do this, but all solutions not worked, i dont know why?
My project have templates of Asp.Net Web Application (.NET Framework).
Script js, when create a iframe and "try" connect to my function on WebForm1.aspx.cs:
<script>
const tag = document.createElement("script");
tag.id = "iframe-demo";
tag.src = "https://www.youtube.com/iframe_api";
const [firstScriptTag] = document.getElementsByTagName("script");
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
let player;
window.onYouTubeIframeAPIReady = () => {
player = new window.YT.Player("player", {
width: 500,
height: 500,
videoId: "M7lc1UVf-VE",
events: {
onStateChange: window.onPlayerStateChange
}
});
};
window.onPlayerStateChange = (event) => {
if (event.data === 0) {
jQuery.ajax({/* * */
method: "POST",
url: "/WebForm1.aspx/returnid",
error: function (XMLHttpRequest, textStatus, errorThrown) {
console.log(textStatus);
},
success: function (result) {
console.log("success");
}
});
}
};
</script>
Code of WebForm1.aspx.cs:
[WebMethod]//[WebMethod()]
public static string returnid(string subject, string message, string messageId, string pupilId)
{
Console.WriteLine("testar");
return "";//https://www.youtube.com/watch?v=8elyZ6aGgZY
}
I try use $.ajax, ajax, $Jquery there * and dont work.
2
Answers
You have to import jQuery, add this inside the header tag:
Try calling the AJAX this way, to see if will hit the method: