我正在尝试使用Jquery& amp设置一个Android应用程序PHP使用Ajax将表单中的数据发布到远程服务器上的数据库中。这一切在本地测试中都可以正常工作,但是当我构建应用程序并尝试通过我的平板电脑完成它时,它根本不起作用。
我认为这是一件非常简单的事情,我做错了。这是我正在使用的代码:
<!DOCTYPE html>
<html>
<head>
<title>Submit a form via AJAX</title>
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.0a4/jquery.mobile-1.0a4.min.css" />
<script src="http://code.jquery.com/jquery-1.5.2.min.js"></script>
<script src="http://code.jquery.com/mobile/1.0a4/jquery.mobile-1.0a4.min.js"></script>
</head>
<body>
<script>
function onSuccess(data, status)
{
data = $.trim(data);
$("#notification").text(data);
}
function onError(data, status)
{
// handle an error
}
$(document).ready(function() {
$("#submit").click(function(){
var formData = $("#callAjaxForm").serialize();
$.ajax({
type: "POST",
url: "http://xxx.co.uk/cgi-bin/process.php",
cache: false,
data: formData,
success: onSuccess,
error: onError
});
return false;
});
});
</script>
<!-- call ajax page -->
<div data-role="page" id="callAjaxPage">
<div data-role="header">
<h1>Name Form</h1>
</div>
<div data-role="content">
<form id="callAjaxForm">
<div data-role="fieldcontain">
<label for="firstName">First Name</label>
<input type="text" name="firstName" id="firstName" value="" />
<label for="lastName">Last Name</label>
<input type="text" name="lastName" id="lastName" value="" />
<h3 id="notification"></h3>
<button data-theme="b" id="submit" type="submit">Submit</button>
</div>
</form>
</div>
<div data-role="footer">
</div>
</div>
</body>
</html>
您可以看到它非常基础 - 我找到了一个教程,并使用其中的代码进行测试。
php代码是:
<?php
header("Access-Control-Allow-Origin: *");
include("conn.inc");
$firstName = $_POST['firstName'];
$lastName = $_POST['lastName'];
$q1 = "insert into customers (Name,Contact) values ('$firstName','$lastName')";
$r1 = mysqli_query($cxn,$q1) or die ('Error Q1');
?>
再次非常基本,因为我是一个新手 - 但任何有关为什么提交的数据在通过android完成时发布的任何帮助都将受到大力赞赏。
非常感谢
答案 0 :(得分:0)
如果您的设备已经被解雇,请检查警报。
使用此
$(document).on('pageshow', "#callAjaxPage",function () { ...... });
而不是
$(document).ready(function() { ...... });