js/jquery如何这样调用php?知道?
你说的其实就是ajax,而ajax通过jquery会少写很多代码$.get(url,{args1:'',args2:''},function(data){some code...},type)$.post(url,{args:'',args2:''}function(data){some code...},type)url就是你的php文件的url地址,function(data){}中的data是从php返回的数据,那么这个函数就是对得到的数据的处理,一般就是用jquery的.html()方法设置你的DOM内容,type就是返回的数据类型,默认为html,因为查询结果可能是数组,那么也可以返回xml及json It's my fault,sorry.参数加的位置已经修改
php获取不到post方式提交的数据?
你把表单form的提交方法method从POST换成GET,你就能在URL清楚地看到每次提交的内容了,这样更方便新手理解.不过你也可以在浏览器提供的F12开发者工具的网络里查看到请求的GET/POST/请求头等信息.
PHP是HTML预处理器,浏览器首次加载test.php页面,服务器PHP其实并没有拿到用户提交的数据,也就是首次访问生成的HTML页面里的内联JS代码里的alert()是没有用户数据的,在你提交表单后才有,所以会出现你说的"页面JS总是获取到前一次请求的值".
最后再说个安全性问题,你的代码中,$_POST['one']是一个用户输出的数据,在你把用户输入的数据输出到页面上时,需要注意防御XSS注入,防御方法如下:
如果你是把用户输入的数据输出到
HTML上下文
中,应该这样:如果你是把用户输入的数据输出到
JS上下文
<script></script>中,应该这样:不过个人还是建议分离JS跟PHP,也就是PHP不要直接输出内容赋值给JS,这样JS代码可以单独放到一个JS文件里.
JS可以这样拿到传统表单提交里的数据并进行AJAX提交,以jQuery为例,将传统form表单提交轻松改造为AJAX提交:
可见HTML传统表单并不需要修改,JS代码里也没有混有PHP代码,编程逻辑就清晰多了.
PHP可以返回数据给JS处理吗?
看你想怎么使用PHP的数据。比如我从数据库里拿出一个数据,然后echo<h1><?phpecho$title;?></h1>那你JS里就可以通过DOM来获取h1的innerHTML不要直接用js,最好用现成的library,比如jQuery,Prototype之类的,因为他们有浏览器兼容。还有就是用ajax,动态获取你要的内容。即通过JS代码,调用PHP代码,然后传递回你要的数据。
AJAX非常的流行,因为不会造成网页停滞,强调的是asynchronous(不同步)。
asp.net如何创建Ajax项目?
Ajax是一种前后端交互技术,
asp.net
可以用,php,java也可以用。创建项目和ajax是没有关系的。至于项目中如何使用ajax与后台交互,得有一定的javascript基础了,然后看看jquery框架,项目上ajax的问题就迎刃而解了。