我有一份我正在处理的注册表格,结果很痛苦。
我对PHP很新,所以请给我一些懈怠 - 哈哈。
我安装了一个jQuery插件,允许我为我的文本框制作内联标签。我还为注册过程中发生的任何错误(无效的电子邮件等)创建了一个错误框。这是我的一些HTML / PHP代码。
<?php
if($_POST['submit'])
{
$signuperror = "Hello World";
?>
<?php if($signuperror != "") { ?>
<span id="signuperror"><?= $signuperror; ?></span>
<?php } ?>
问题是当我点击表单上的提交按钮时,“Hello World”的“错误”没有显示。我将此代码复制并粘贴到test.php文档上,并且工作正常。所以我知道它必须来自我的其他HTML代码。几乎每行代码排除故障后,我找到了罪魁祸首。事实证明,内联标签的jQuery插件初始化是个问题。
$(function(){
$.fn.formLabels();
$("form").submit(function(){
var formVal = $("form").serialize();
parent.$("#default div.results").html(formVal);
return false
})
});
当我删除它时,它工作得很好(当然没有我的内联标签)。
我能做些什么来完成PHP和jQuery的工作。
感谢。 - 瑞恩
答案 0 :(得分:1)
请注意return false
功能末尾的$("form").submit()
。这意味着jQuery函数取代了表单的POST操作。您没有同步重新加载页面,因此$_POST["submit"]
没有任何值。摆脱return false
行,看看页面是否按预期重新加载。
答案 1 :(得分:0)
这里有很多事情要发生。需要一步一步地做到这一点。
<?php
格式或使用<?
简短格式,但要确保我会在<?php
中编码,以便在所有地方进行兼容<?php echo $variable; ?>
而不是<?=
。不是它没有好处,但它会消除asp样式输出的任何php配置问题。Jquery并没有弄乱你的PHP。那个标题和我的答案一样随机。