AJAX不会将表单中的用户输入发送到PHP脚本
我一直在尝试通过在线学习各种教程和示例来学习基本的
AJAX和
Javascript,但我已经碰壁了.我正在尝试编写一个简单的脚本,使用AJAX从表单中获取用户输入并将其提交给PHP脚本,然后只回显输入.
我真正可以告诉的是,无论输入的是什么都没有通过,但我还没有达到可以说明原因的地步.我已尝试使用POST和GET,以及各种dataTypes,结果相同.我确信我做错了什么或误解了什么,但我不确定是什么. HTML / AJAX <form id="my_form"> word <input type ="text" id="word1"/><br/> <input type="submit"> </form> <script> $(document).ready(function(){ $("#my_form").on(function(e){ e.preventDefault(); var verb = $("word1").val(); $.ajax({ url: "testrun.php",data: "verb",type: "POST",}); }); }); </script> PHP if (isset($_POST['verb'])){ $x= $_POST['verb']; echo $x; }else { echo "not working"; } 编辑:到目前为止,我已经尝试了一些建议,直接复制和粘贴它们,并且没有一个实际做过我能看到的任何事情.我想我已经开始更多地了解AJAX应该如何工作,基于响应,但它仍然没有达到PHP由于某种原因.我已经尝试将AJAX / HTML放在一个单独的文件中,该文件调用testrun.php脚本并将所有内容放入testrun.php文件中并基本上让它用AJAX调用自己,但这两种方法都没有取得任何成果. 如果我从响应中获得的AJAX很好,那么我是否误解了如何设置PHP以实际接收POST数据?我还是很迷茫. 解决方法
三个变化: –
1.var verb = $(“word1”).val();需要是var verb = $(“#word1”).val();因为它的id(word1) 2.data:“动词”,需要是数据:{“动词”:动词}, 3.form提交需要正确,所以下面给出的代码(缺少提交): – 正确的代码: – $(document).ready(function(){ $("#my_form").on('submit',function(e){ // check here you have one missing `submit` e.preventDefault(); var verb = $("#word1").val(); // remove space between `$` and `(` $.ajax({ url: "testrun.php",data: {"verb":verb},}); }); }); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |