Php 让jquery中的.get()正常工作
我一直在尝试使用.get函数练习jquery,但它不起作用。这是我的密码:Php 让jquery中的.get()正常工作,php,jquery,Php,Jquery,我一直在尝试使用.get函数练习jquery,但它不起作用。这是我的密码: <html> <head> <title>Testing Site</title> <script type="text/javascript" src="../js/jquery.js"></script> <script type="text/javascript"> $(function() {
<html>
<head>
<title>Testing Site</title>
<script type="text/javascript" src="../js/jquery.js"></script>
<script type="text/javascript">
$(function() {
$("#id").click(function(){
$('#hello').css('background-color', 'blue');
$.get("test.php", function(data){
$('body')
.append( "Name: " + data.name )
.append( "Time: " + data.time );
$('body').css('background-color', 'red');
}, "json");
});
});
</script>
</head>
<body>
<span id="hello">Hello World!</span>
<input type="button" id="id" value="Click Here"></input>
</body>
</html>
我基本上修改了jQueryAPI站点上的.get示例。但当我点击按钮时,什么也没发生!一定是出了什么问题,因为背景颜色也没有改变。。。我有正确的路径名,并且复制了正确的php文件:
<?php echo json_encode(array("name"=>"John","time"=>"2pm"));
?>
我还尝试实现了一个使用.get的示例,但该示例不起作用。在firefox上什么都没发生,而在Google Chrome上它只起了一部分作用。。。
我不确定是否有人愿意尝试实现这段代码,但这段代码让我想知道这一点?在该示例中,它应该从普通html文件中检索信息。我假设它只适用于php文件之类的文件,当您调用echo时,该文件使服务器发送回信息…您没有等待DOM就绪。代码运行时,$id不会返回任何内容,因为该div尚未加载 将代码包装为:
你不是在等DOM准备好了。代码运行时,$id不会返回任何内容,因为该div尚未加载 将代码包装为:
您需要将click事件绑定放到jQuery的document ready事件中。 对于当前代码,当您试图将click事件绑定到id元素时,id在DOM中还不可用,因此jQuery无法找到该元素 试试这个:
$(function(){
$("#id").click(function(){
$('#hello').css('background-color', 'blue');
$.get("test.php",
function(data){
$('body').append( "Name: " + data.name )
.append( "Time: " + data.time );
$('body').css('background-color', 'red');
}, "json");
});
});
您需要将click事件绑定放到jQuery的document ready事件中。 对于当前代码,当您试图将click事件绑定到id元素时,id在DOM中还不可用,因此jQuery无法找到该元素 试试这个:
$(function(){
$("#id").click(function(){
$('#hello').css('background-color', 'blue');
$.get("test.php",
function(data){
$('body').append( "Name: " + data.name )
.append( "Time: " + data.time );
$('body').css('background-color', 'red');
}, "json");
});
});
您的脚本在元素存在之前执行
将移动到元素的末尾。您的脚本在元素存在之前执行 将移动到。将代码包装在$function{}中,因为jQuery应该可以使用元素来附加事件处理程序。这将在DOM就绪时执行代码
$(function(){
$("#id").click(function(){
$('#hello').css('background-color', 'blue');
$.get("test.php",
function(data){
$('body').append( "Name: " + data.name )
.append( "Time: " + data.time );
$('body').css('background-color', 'red');
}, "json");
});
});
将代码包装在$function{}中,因为jQuery应该可以使用元素来附加事件处理程序。这将在DOM就绪时执行代码
$(function(){
$("#id").click(function(){
$('#hello').css('background-color', 'blue');
$.get("test.php",
function(data){
$('body').append( "Name: " + data.name )
.append( "Time: " + data.time );
$('body').css('background-color', 'red');
}, "json");
});
});
Javascript在文档中显示时执行。您希望使用jQuery的ready函数让脚本等待DOM就绪
$(document).ready(function(){
// Code to execute
});
或者使用与上述完全相同的快捷方式功能
$(function(){
// Code to execute
});
Javascript在文档中显示时执行。您希望使用jQuery的ready函数让脚本等待DOM就绪
$(document).ready(function(){
// Code to execute
});
或者使用与上述完全相同的快捷方式功能
$(function(){
// Code to execute
});
由于代码位于页面的头部,因此它将在创建DOM之前执行。您需要让代码等待DOM就绪。您可以通过将代码包装到document.ready中来完成此操作:
$(function(){
// code goes here
});
由于代码位于页面的头部,因此它将在创建DOM之前执行。您需要让代码等待DOM就绪。您可以通过将代码包装到document.ready中来完成此操作:
$(function(){
// code goes here
});
问题是脚本甚至没有被调用,因为绑定发生在页面完全加载之前 您需要将代码包装在
$(document).ready(function() {
// your code
});
街区
问题是,脚本甚至没有被调用,因为绑定发生在页面完全加载之前 您需要将代码包装在
$(document).ready(function() {
// your code
});
街区
您需要将eventhandler放入$document.readyfunction{};并使用背景色而不是背景色。在Javascript中,CSS键没有-在它里面,而是一起写的,第二个单词像backgroundColor或textShadow一样粗
$(document).ready(function() {
$("#id").click(function(){
$('#hello').css('backgroundColor', 'blue');
$.get("test.php",
function(data){
$('body').append( "Name: " + data.name )
.append( "Time: " + data.time );
$('body').css('backgroundColor', 'red');
}, "json");
});
});
应该是未经测试的
id元素是嵌入在站点中,还是使用Ajax进行后期加载?如果是,则必须使用以下代码:
$(document).ready(function() {
$("#id").live({
click: function(){
$('#hello').css('backgroundColor', 'blue');
$.get("test.php",
function(data){
$('body').append( "Name: " + data.name )
.append( "Time: " + data.time );
$('body').css('backgroundColor', 'red');
},
"json"
);
}
});
});
您需要将eventhandler放入$document.readyfunction{};并使用背景色而不是背景色。在Javascript中,CSS键没有-在它里面,而是一起写的,第二个单词像backgroundColor或textShadow一样粗
$(document).ready(function() {
$("#id").click(function(){
$('#hello').css('backgroundColor', 'blue');
$.get("test.php",
function(data){
$('body').append( "Name: " + data.name )
.append( "Time: " + data.time );
$('body').css('backgroundColor', 'red');
}, "json");
});
});
应该是未经测试的
id元素是嵌入在站点中,还是使用Ajax进行后期加载?如果是,则必须使用以下代码:
$(document).ready(function() {
$("#id").live({
click: function(){
$('#hello').css('backgroundColor', 'blue');
$.get("test.php",
function(data){
$('body').append( "Name: " + data.name )
.append( "Time: " + data.time );
$('body').css('backgroundColor', 'red');
},
"json"
);
}
});
});
我们应该计算一天有多少问题是DOM没有准备好。Xeon06-自动回复者会很可爱:我们应该计算一天有多少问题是DOM没有准备好。Xeon06-自动回复者会很可爱:是的,我太傻了!但它仍然不起作用!颜色的改变当然会,但是.get方法仍然没有任何作用!有人能帮我指出问题出在哪里吗?你有没有试过使用firebug或chrome/ie中的开发者工具查看响应?还有,颜色变回红色了吗?你说的对,我太傻了!但它仍然不起作用!这个
颜色改变当然会,但是.get方法仍然没有任何作用!有人能帮我指出问题出在哪里吗?你有没有试过使用firebug或chrome/ie中的开发者工具查看响应?还有,颜色会变回红色吗?