很抱歉问了个愚蠢的问题,但我今天脑子不灵了,我必须尽快完成这个问题。
我有调用 AJAX 的按钮:
<button onclick="showUser(this.value)" value="' . $row2["xxx"] . '">' . $row2["xxx"] . '</button>`
及功能:
<script>
function showUser(str) {
if (str=="") {
document.getElementById("txtHint").innerHTML="";
return;
}
if (window.XMLHttpRequest) {
// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
} else {
// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function() {
if (this.readyState==4 && this.status==200) {
document.getElementById("maintext").innerHTML=this.responseText;
}
}
xmlhttp.open("GET","maintext.php?q=" +str,true);
xmlhttp.send();
}
</script>
到目前为止一切顺利。 如果我想将此函数与 php 中的变量一起使用,该怎么办?或者我可以编写具有相同目的的新函数,但在哪里放置变量?我尝试过:
if (isset($_GET['info'])) {
echo '<script> function showUser(' . $_GET["info"] . ') </script>';
}
...但它不起作用。
感谢帮助
最佳答案
您正在重新定义该函数。您只需在定义它之后(!)调用它即可。
替换
if (isset($_GET['info'])) {
echo '<script> function showUser(' . $_GET["info"] . ') </script>';
}
与
if (isset($_GET['info'])) {
echo '<script> showUser("' . $_GET["info"] . '") </script>';
}
此外,您必须插入引号 (""
),否则 Javascript 不会将输入视为字符串。
关于javascript - 在哪里将变量放入此 JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43629605/