我是一个帮助翻译的助手。
我为自己创建了一个小项目。由于我不是很有经验的程序员,所以我开始使用PHP创建项目。很快就变得明显,通过HTML按钮点击运行PHP函数和类方法并不是最直接的任务。
我设置了一些测试代码。首先,我创建了一个HTML表单,从中我想读取用户输入的值:
<form name="form" action="" method="POST">
Title: <br> <input type="text" id="title"> <br>
Description: <br> <input type="text" id="description"> <br>
Priority: <br> <input type="number" id="priority"> <br> <br>
<input type="button" id="ajaxTest" value="Send>
</form>
现在,当id为#ajaxTest的按钮被点击时,我希望调用我创建的PHP文件中的一个类方法。为此,我进行了谷歌搜索,并最终找到以下jQuery代码:
<script type="text/javascript">
$("#ajaxTest").click( function() {
$t = $("#title").val();
$.ajax({
type: "POST",
url: "http://www.example.com/task.php",
data: "t="+t
}).done(function(results) {
$("#results").html(results).hide().fadeIn();
})
});
</script>
在HTML中还有一个id为#results的div元素,用于显示结果数据。
现在,被调用的task.php文件如下所示(为了易读性而简化):
<?php
class Task {
private $title;
private $description;
function SetTitle($t) {
$this->title = $t;
}
function GetTitle() {
return $this->title;
}
function SetDescription($d) {
$this->description = $d;
}
function GetDescription() {
return $this->description;
}
}
我该如何通过jQuery/AJAX调用这个类的不同成员函数,并获取它们的返回值作为DOM的输入?我想我需要创建一个中介类,比如TaskHandler,来初始化对象等,但是我完全不知道该怎么做。我已经花了一整天的时间在这个问题上,但是我没有找到能够帮我找到可行解决方案的答案。非常感谢你的帮助!
编辑:我现在已经编辑了jQuery,如下所示:
<script type="text/javascript">
$("#ajaxTest").click( function() {
var t = $("#title").val();
$.ajax({
type: "POST",
url: "http://www.example.com/taskHandler.php",
data: {"t": t},
success: function(response) {
$("#results").html(response);
}
});
});
</script>
以下是taskHandler.php的代码:
<?php
require_once("task.php");
$t = new Task();
$t->SetTitle($_POST['t']);
$output = $t->GetTitle();
echo $output;
尽管如此,仍未看到任何内容显示出来。我在这里做错了什么?
SetTitle.php
,GetTitle.php
,SetDescription.php
... 你懂的 :) - iCollect.it Ltd