3

这是我的问题:我在 index.html 中有一个表单,它将有一个文本输入,并且值将是 $.post 到应该处理它并返回一个值的 php 页面。我的代码:

索引.html:

<!DOCTYPE html>
<html>
<head>
<title>Page Title</title>
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.0a3/jquery.mobile-1.0a3.min.css" />
<script type="text/javascript" src="http://code.jquery.com/jquery-1.5.min.js"></script>
<script type="text/javascript" src="http://code.jquery.com/mobile/1.0a3/jquery.mobile-1.0a3.min.js"></script>

<script>
    function get(){
        $.post('http://xxx/xxx/get.php', {name: form.name.value},
            function(output){
                $('#result').html(output).show();
            });
    }
</script>

</head>
<body>

<div data-role="page" id="header">

<div data-role="header">
<h1>Header</h1>
</div>

<div data-role="content">

<form name="form" id="form">
    <input type="text" name="name"><input type="button" value="Get Output" onClick="get();">
</form>

<p> result here: </p>
<div id="result"></div>

</div>

<div data-role="footer">
<h4>Footer</h4>
</div>

</div>
</body>
</body>
</html>

和get.php

<?php
$name = $_POST['name'];
echo $name;
?>

这是用于我的测试目的的简单编码。从代码中我们可以看出,我们在文本字段中输入的任何文本都将在 get.php 中进行处理。由于我将 echo $name 放在那里,名称应该显示在 div id = result in index.html 中。我想我的代码是正确的,但它只是没有用。所以我需要这里专家的帮助......我做错了什么?

4

1 回答 1

3

几点:

1.将远程服务器加入白名单...如果您使用的是黑莓,则必须编辑config.xml文件,如果是ios应用程序,则必须更改项目的plist文件。

编辑 2011-11-03:在 Android 中:确保此行位于 phonegap 应用清单文件中:<uses-permission android:name="android.permission.INTERNET">

2.尝试将此头添加到php文件头('Access-Control-Allow-Origin:*');

编辑 2011-11-03:此标头必须包含在 PHP 文件的开头。

  1. $('#result').html(输出).show(); show 方法不是必需的,只有当字段具有隐藏属性时才必须使用它。

祝你好运!

于 2011-11-01T12:09:01.607 回答