要设置form的提交方式,一般有两种方式get和post默认的是get
<form
name="form" method="post">
如果不填写method的话,默认将以get方式提交。
给你看个例子和解决办法:
例子:
<volist name="survey" id="vo">
<p>
<!-- 投票小标题 -->
{$vos_question}
</p>
<volist name="survey3" id="f">
<eq name="fsid" value="$vos_id">
<p>
<if condition="$vo['s_type'] eq 0">
<label>
<!-- <span style="display:none">$radio = radiobutton{$fsid};</span> -->
<input type="radio" name="radiobutton{$fsid}" value="{$fq_name}" />
</label>
<!-- 单选答案选择 -->
{$fq_name}
<else />
<label>
<!-- <span style="display:none">$checkbox = checkboxbutton{$fsid};</span> -->
<input type="checkbox" name="checkboxbutton{$fsid}[]" value="{$fq_name}" />
</label>
<!-- 多选答案选择 -->
{$fq_name}
</if>
</p>
</for>
</eq>
</volist>
<br/>
</volist>
这段代码 我想问一下 我用jquery写ajax如何能得到2个input里name的值, 直接用{'name1':'$("input[name=radiobutton{$fsid}]")val()', 'name2':'$("input[name=checkboxbutton{$fsid}]")val()'}似乎行不通, 获取不到
解决办法:
ThinkPHP的标签在javascript中是不解析的。
----
比较可行的办法是:
$('input:checkbox')each(function()
{
var name=$(this)attr('name');
alert(name);
});
这个需要配合js,打开一个html页面,首先js用ajax请求页面,返回第一个页面信息确定处理完毕(ajax有强制同步功能),ajax再访问第二个页面。(或者根据服务器状况,你可以同时提交几个URL,跑几个相同的页面)
参数可以由js产生并传递url,php后台页面根据URL抓页面。然后ajax通过php,在数据库或者是哪里设一个标量,标明检测到哪里。由于前台的html页面执行多少时候都没问题,这样php的内存限制和执行时间限制就解决了。
因为不会浪费大量的资源用一个页面来跑一个瞬间500次的for循环了。(你的500次for循环死了原因可能是获取的数据太多,大过了php限制的内存)
不过印象中curl好像也有强制同步的选项,就是等待一个抓取后再执行下一步。但是这个500次都是用一个页面线程处理,也就是说肯定会远远大于30秒的默认执行时间。
默认值: "application/x->
把一个数组当参数传一样的,比如原来:{name:'zhang'},现在是{name:['zhang','li','wang']}。需要后台注意的是获取name参数值则要用数组去存储name值了。
你可以去后盾人平台看看,里面的东西不错
以上就是关于PHP+Ajax用POST方法提交的数据,PHP页面收不到全部的内容,包括:PHP+Ajax用POST方法提交的数据,PHP页面收不到、我用的是thinkphp3.2.3为什么使用jquery的ajax接收不到post值、如何通过php的curl模拟ajax请求,获取其返回值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)