[英]jQuery is messing with my PHP
我有一份正在處理的注冊表,事實證明這很痛苦。
我是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都能正常工作。
謝謝。 -瑞安
注意$("form").submit()
函數末尾的return false
。 這意味着jQuery函數將取代表單的POST操作。 您不會同步地重新加載頁面,因此$_POST["submit"]
沒有任何值。 擺脫return false
行,並查看頁面是否按預期重新加載。
這里發生了很多事情。 需要逐步執行此操作。
<?php
格式還是使用<?
簡短的形式,但是要確保我會在<?php
全部編碼,因此它到處都兼容 <?php echo $variable; ?>
<?php echo $variable; ?>
而不是<?=
。 並不是說它不好,但是它將帶出asp樣式輸出的任何php配置問題。 jQuery不會弄亂您的PHP。 這個標題和我的回答一樣隨機。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.