JavaScript的:
function executeOnclick() {
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (xhttp.readyState == 4 && xhttp.status == 200) {
myFunction(xhttp);
}
};
xhttp.open("GET","http://try.com/students/search.php?stud_id=?" +x , true);
xhttp.send();
}
function myFunction(obj){
var xmlDoc = obj.responseText;
var x = xmlDoc.getElementsByTagName("id");
document.getElementById("demo").innerHTML = xhttp.responseText;
}
HTML:
<img id="1210" onclick="executeOnclick()" onload="myElement(this);"
class="Cpictures" src="1.jpg" width=50px height=75px alt="Robert" />
此代码不起作用。我希望当我调用 myFunction 函数时,我会获得图像的Id并将其传递给我的API。我该怎么做?
答案 0 :(得分:2)
问题是function myElement()
不接受任何参数。传递this
传递被调用对象的引用(具体地,在这种情况下,是HTMLImageElement
的实例)。但是你的功能根本就没有找到任何东西。
更改您的功能:
function myElement(){
var getID = document.getElementById(this.id);
}
为:
function myElement(obj){
//Insert code you want here. I printed the id to console for example.
console.log(obj.id);
}
允许您访问对象的ID(以及您要使用的ID的任何其他部分)。