我无法获取要发送的表单数据。我的场景:页面"user.php"包含一个表单。其中的文本字段应将数据发送到up_cap.php,然后将其发送回user.php,并在中显示,而不刷新页面。
所以基本上:用户在文本字段中键入信息,然后在提交时,它会显示在旁边,而不会刷新页面。php页面没有接收到数据。
我相信我的问题是将表单数据转换为AJAX信息的语法,或者将AJAX转换为PHP的语法。我已经做了两天了!非常感谢任何帮助/想法。
我基于以下代码:http://net.tutsplus.com/tutorials/javascript-ajax/submit-a-form-without-page-refresh-using-jquery/
HTML(user.php)
<div id="the_boxx" class="popUp2">
<? include 'up_cap.php'?>
</div><!--end popUp-->
HTML FORM(user.php)
<form name="cap_update">
<input id="c_a_p" name="c_a_p" value="" size="30"
class="validate[required] input" type="text" />
<div class="clearfix;"></div></div>
<button id="update_info" type="submit"
style="float:right;padding-left:10px;padding-right:10px;"
class="chg" >Update</button>
</form>
JAVASCRIPT(位于user.php正文底部)
<script>
$('.chg').click(function() {
var c_a_p = $("#c_a_p").val();
$.ajax({
type: "POST",
url: "up_cap.php",
data: "c_a_p",
success: function() {
$('#the_boxx').load('up_cap.php')
}
}); return false;
});
</script>
PHP(up_cap.PHP)
<?
$vaar = $_REQUEST['c_a_p'];
echo $vaar;
?>
也许这样:)
data: {key:value}
并且在php中
$_POST['key']
祝你好运!
OP这里:答案是AlexP的建议。由于他没有回复或发帖作为回答,我无法给他打分。不管怎样,我的解决方案确实是我所怀疑的语法。
success: function(html) { $('#the_boxx').html(html); }
这也是需要的:
data: "c_a_p=" + c_a_p,
以下是您更正的语法。您没有适当地制作data
字符串。
$('.chg').click(function() {
var c_a_p = $("#c_a_p").val();
$.ajax({
type: "POST",
url: "up_cap.php",
data: "c_a_p=" + c_a_p,
success: function() {
$('#the_boxx').load('up_cap.php')
}
}); return false;
});
</script>
将数据更改为-
data: { cap : c_a_p } ,
和Php
$vaar = $_REQUEST['cap'];