我正在尝试制作一个AJAX表单,它将在更新时更新twitter状态。我有一个表单目前与php工作,但不确定如何添加AJAX功能。
表单如下:
<form id = "yourwhisper" method = "post" >
<label for="whisper">Enter your status update</label>
<textarea id="whisper" name="whisper" rows="2" cols="50" required></textarea>
<label class="error" for="whisper" id="whisper_error">Must be no more than 140 characters.</label>
<input id="lat" name="lat" style = "display:none"></input>
<input id="lon" name="lon" style = "display:none"></input>
<button type="submit" id = "submit">Pass it on</button>
</form>这是我作为form操作使用的php (它调用twitter api库中的php函数)。我现在已经将它移到form-manager.php:
$t->update($_POST["whisper"], false, $_POST["lat"], $_POST["lon"]); 最后,这是添加AJAX功能的jQuery代码。它获取用于更新的文本以及地理位置数据,并以“dataString”的形式将其传递给form-manager.php文件。
<script type="text/javascript" charset="utf-8">
$(function() {
$('.error').hide();
$(".submit").click(function() {
// validate and process form here
$('.error').hide();
var whisper = $("textarea#whisper").val();
var lat= $("input#lat").val();
var lon = $("input#lon").val();
if (whisper == "") {
$("label#whisper_error").show();
$("textarea#whisper").focus();
return false;
}
var dataString = 'whisper='+ whisper + '&lat=' + lat + '&lon=' + lon;
//alert (dataString);return false;
$.ajax({
type: "POST",
url: "form-manager.php",
data: dataString,
success: function() {
// alert ("form sent");
});
}
});
return false;
});
});
</script>我的问题是,我如何让form-manager.php获取这些信息,并将其放入更新twitter所需的3个变量中?
发布于 2010-02-28 04:12:34
dataString应该作为$_POST['dataString']对PHP可用。它只是一个包含字符串的var。你应该explode它。
或者,如果您愿意,可以设置ajax方法的数据属性,比如{ whisper: "Foo", lat: "fooLat" },这样它们就会像$_POST['whisper']和$_POST['lat']一样显示出来
https://stackoverflow.com/questions/2348752
复制相似问题