我正在尝试使用表单的数据来创建一个JSON文件,我可以在我的应用程序的其他页面中使用它。
我正在使用JQuery Mobile及其POST method. 但我没有任何结果,我不知道为什么。 这是我的代码。
<form id="#formK">
<label>Text
<input type="text" name="header" />
</label>
<div data-role="button" id="save" />Save</div>
</form>
<script type="text/javascript">
$("#save").click( function(){
$.post("OptJson.php", {head : $('[name=header]').val(); }, json );
});
</script>
这是我的OptJson.php页面的来源
<?php
echo $_POST['head'] ;
?>
错误在哪里?感谢
答案 0 :(得分:0)
尝试从head : $('[name=header]').val();
如果我在Chrome浏览器中运行您的代码,我会收到以下消息:SyntaxError: Unexpected token ;
。分号是语句终止符,您不想终止该语句,您只想调用该函数并将结果用作参数。
您发送的参数是一个JavaScript对象,您可以像这样构造它:
var myObject = {
data: "stuff",
otherData: getStuff()
};
不喜欢这样:
//THIS IS WRONG
var myObject = {
data: "stuff";
otherData: getStuff();
};
//THIS IS WRONG
注意分号的不同用法。
修改:此外,必须将dataType
参数指定为字符串,因此"json"
,而不是json
。
我强烈建议您使用大多数现代浏览器中存在的网络开发者工具(我更喜欢Chrome,但Firefox也很好)。检查“控制台”选项卡,查看浏览器报告的错误。在调试JavaScript代码时,它会有所帮助。
Edit2:如果您想要实际查看返回的数据,则必须使用成功回调,如下所示:
$.post("OptJson.php", {head : $('[name=header]').val() }, function(data){
alert(data); //do stuff with returned data
}, "json");