XMLHTTP-检索PHP,但可以';不执行JavaScript/jQuery
首先,我是jQuery和Ajax新手。我很想了解更多信息,并决定为自己制作一个基于Ajax/PHP/jQuery/JavaScript等的项目。。。我想把所有的语言结合起来。现在我遇到了一个问题: 我的JavaScript代码,这个调用是PHP文件:XMLHTTP-检索PHP,但可以';不执行JavaScript/jQuery,php,jquery,ajax,database,xmlhttprequest,Php,Jquery,Ajax,Database,Xmlhttprequest,首先,我是jQuery和Ajax新手。我很想了解更多信息,并决定为自己制作一个基于Ajax/PHP/jQuery/JavaScript等的项目。。。我想把所有的语言结合起来。现在我遇到了一个问题: 我的JavaScript代码,这个调用是PHP文件: function fetchDatabase(method, value) { document.getElementById("database_result").innerHTML = '<p class="loading">
function fetchDatabase(method, value) {
document.getElementById("database_result").innerHTML = '<p class="loading">Laden...</p>';
if (window.XMLHttpRequest) {
xmlhttp = new XMLHttpRequest();
} else {
xmlhttp = new ActiveXObject('Microsoft.XMLHTTP');
}
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
document.getElementById("database_result").innerHTML = xmlhttp.responseText;
}
}
if (value != 'none') {
xmlhttp.open(method, 'php/fetch_browse.php?value=' + value);
} else {
xmlhttp.open(method, 'php/fetch_browse.php');
}
xmlhttp.send();
}
但是它没有console.log()
任何东西。即使是“<这是一个测试。
因此,我尝试在PHP文件中添加带有警报的脚本标记。这也行不通。 有人知道如何使用ajax获取的内容执行javascript吗
谢谢,控制台中是否有JS错误?尝试在单击触发器的开头添加一个警报,并首先检查是否执行了该警报。正如我在问题中所说,它不会控制台。记录值,没有错误。它不会执行任何javascript。我只在ajax获取的部分遇到了这个问题。使用$(document)代替$('.browseclick').click(),在('click','.browseclick',function(){})上使用$(document)@Larta仅当所述javascript位于父页面上时,否则还需要解除绑定以防止重复事件。@user3570796,如果动态生成页面,JS可能找不到要附加事件的元素,因为它尚未创建。使用
$(document).on()
允许使用JS,以便可以找到元素并成功附加侦听器。
<?php
include('database.php');
if (isset($_GET['value'])) {
$value = $mysqli->real_escape_string($_GET['value']);
$filequery = "SELECT * FROM files WHERE filelocation='".$value."'";
$folderquery = "SELECT * FROM folders WHERE folderlocation='".$value."'";
} else {
$filequery = "SELECT * FROM files";
$folderquery = "SELECT * FROM folders";
}
foreach ($mysqli->query($folderquery) as $row) {
echo '<a class="browseclick">';
echo '<div class="browse-item">';
echo '<img src="img/browse-item/folder.png">';
echo '<p title="' . $row['foldername'] . '">' . $row['foldername'] . '</p>';
echo '</div>';
echo '</a>';
}
foreach ($mysqli->query($filequery) as $row) {
echo '<a class="browseclick">';
echo '<div class="browse-item">';
echo '<img src="img/browse-item/' . $row['filetype'] . '.png">';
echo '<p title="' . $row['file'] . '">' . $row['file'] . '</p>';
echo '</div>';
echo '</a>';
}
mysqli_close($mysqli);
?>
$('.browseclick').click(function() {
var test = $(this).text() + ' - < This is a test';
console.log(test);
});