网站建设资讯

NEWS

网站建设资讯

phpjq序列化数据 序列化 php

php提交表单问题,现在表单里面引入了iframe,可里面的input里面的值不能提交过去

用iframe 里面加载的图片???

创新互联公司专注于岚山网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供岚山营销型网站建设,岚山网站制作、岚山网页设计、岚山网站官网定制、重庆小程序开发公司服务,打造岚山网络公司原创品牌,更为您提供岚山网站排名全网营销落地服务。

post不出去的 不用想了。

提示 不要用iframe容器,因为父级框架中 无法 提交子框架的 表单。 仅仅用原生的提交表单按钮  是绝对不可能的操作。

如果可以 改用div容器。显示预览,然后 提交原父级表单中的input type="file" 可以post传递文件。 iframe下的表单 仅仅用原生的 提交表单按钮 你post不出去

如果又能力自己重写提交动作,重组post数据(jq很简单实现这个)。也可以提交iframe下的子表单的input数据。

以下是我用的 简单的带图片预览上传的 部分代码

引用以下库

ajaxfileupload.js

jquery-migrate-1.2.1.min.js

jquery-1.11.0.min.js

$('input#but_upload').click(function(){

//picdata=$('input#picfile').val;

tc = $('div#tags').children('span.selecttag').eq(0).attr('mete_id');

tout = $('div#infos').children('div#sel_mod').find('li.selected').last().attr('mete_hash_name');

if (typeof(tc) == 'undefined'){

$('p#outerdebug').text('请选择一个标签');

return false;

}

if (typeof(tout) == 'undefined'){

$('p#outerdebug').text('请选择上传图片所在的模板框架');

return false;

}

if ($("#picfile").val().length = 0) {

$('p#outerdebug').text('请选择一个要上传的本地文件');

return false;

}

$.ajaxFileUpload({

url: "postpic.php?token=" + token +"tags=" + tc+"hash_name=" + tout, 

secureuri:false,

type: 'post',

fileElementId: 'picfile',

dataType: 'json',

success: function(data,status){

if (data.success == true){

tempstr = "div class=\"pics\" mete_hash=\"" + data.hash_name + "\"div class=\"prepic\"img src=\"" + data.url + "\"/divdiv class=\"act\"div class=\"removethis\" onclick=\"removethis(this)\"/divdiv class=\"reflink\" onclick=\"reflink(this)\"/div/div/div";

$("div#previews").prepend(tempstr);

} else {

$('p#outerdebug').text(data.error);

}

},

error: function (data, status, e)//服务器响应失败处理函数

{

$('p#outerdebug').text('BR_0'+e);

}

});

})

HTML

forminput id="picfile" name="picfile" type="file" size="2000000"/br /input id="but_upload" type="button" value="上传" /hr //formp id="outerdebug"/pdiv id="previews"hr style=" clear:both; visibility:hidden;"/

顺带一提的是,这个实现异步提交上传文件的js库,实际上就是利用了iframe,在iframe子框架内提前实现了一次post。

另外,从用户端执行效果出发。不建议用iframe。 iframe加载是使用的主线程句柄。如果iframe页面响应时间过长。会导致全部页面,包括父级页面锁死。用户体验较差。 能用ajax异步,尽量用。  我还没遇到过ajax加载 输入到div容器,用户体验感反而比iframe差的情况。

php如何处理jquery提交过来的序列化表单

直接用$_POST['data'];获取即可的;

$data = $_POST['data'];

echo 'pre';

print_r($data);

die();

这样就是一个数组,你无需再用什么序列化、反序列化之类的,你可以输出$_POST的数据看看就知道勒!(*^__^*) 

若有任何其它疑问,欢迎追问......

请问PHP JQUERY之间如何传递数组?

逻辑是这样的,jQuery发送数据ID=1到getXX.php中,在php中接收:$id=$_POST['ID'],然后你应该是利用ID=1这个条件,来查询出一些东西,将这些东西返回给前台jQuery(就是你说的让jQuery接收): echo json_encode(你要返回给jQuery的东西);exit();jQuery接收到的东西就是function中的data,但是是个字符串,可以利用jQuery中的var data = JSON.parse(data)将字符串转换成对象(下面就是你说的遍历数组),然后写一个循环遍历出数组即可:for(var i=0;idata.length;i++){alert(data[i].name(数组中的一个字段)}


分享文章:phpjq序列化数据 序列化 php
当前URL:http://cdweb.net/article/hhcioe.html