我的问题是,当按下按钮而没有页面重新加载时,我需要在DIV中包含一个PHP文件。
'Jsfiddle'文件中有更多解释。
下面是一个包含的Jsfiddle文档。
感谢您的时间。我很乐意根据要求提供任何信息。
答案 0 :(得分:3)
请参阅here for your updated jsfiddle
您已使用名称Change
标记了更改按钮,但却尝试使用ID为change
来选择它。另外,你没有告诉jsfiddle包含jQuery。
答案 1 :(得分:1)
尝试以下方法:
<button name="Change" id="Change">Change Div</button>
您正在为ID指定点击功能,但该按钮上没有设置ID。
答案 2 :(得分:1)
您可以在jquery
中尝试使用load()函数答案 3 :(得分:1)
PHP是一种服务器端脚本语言,将在JavaScript脚本执行之前执行。
因此,您不能使用.load()
来执行PHP代码,但是,您可以尝试.ajax()
向服务器创建可以实现PHP代码的AJAX请求。
如果您在使用.ajax()
时遇到问题,请参阅http://api.jquery.com/jQuery.ajax/。
注意:在.ajax()
方法中,有一个名为beforeSend
的设置,其中&#34;可用于在发送之前修改jqXHR(在jQuery 1.4.x,XMLHTTPRequest)对象中#34 ;.希望这种方法可以帮助你。
然后,您的JavaScript代码将如下所示:
$(document).ready(function(){
$("#Change").click(function(){
//doing AJAX request
$.ajax({
url:"include/start10.php",
beforeSend:function(){
$('#myDiv').fadeOut('slow');
},
success:function(data){
// do something with the return data if you have
// the return data could be a plain-text, or HTML, or JSON, or JSONP, depends on your needs, if you do ha
$('#myDiv').fadeIn('slow');
}
});
});
});
答案 4 :(得分:0)
你不能用AJAX包含PHP文件,而是包含AJAX服务器端脚本的响应,即PHP(具有相同的效果)。
载入中...
JS文件(代码):
function ajaxalizeDiv()
{
$.ajax({
type: "get",
url: "/path/to/the/php/you/want/to/include",
data: {
// Anything in json format you may want to include
id: myvarwithid, // descriptive example
action: "read" // descriptive example
},
dataType: "json",
success: onAjax
});
}
function onAjax(res)
{
if(!res || !res.text)
return;
$("#mydiv").html(res.text);
}
这里是PHP文件:
<?php
$id = (int) @$_GET['id']; // same as in data part of ajax query request
$action = @$_GET['action']; // same as in data part of ajax query request
$text = '<a href="/index.php?id=' . $id . '&action=' . $action . '">click me</a>';
// Note this is short example you may want to echo instead of die
// You may use not JSON, but raw text. However, JSON is more human-friendy (readable)
// and easy to maintain.
// Note also the array keys are used in the onAjax function form res (response).
die(json_encode(array('text' => $text /* and anything else you want */)));
?>