当前位置:编程学习 > C#/ASP.NET >>

SWFUPLOAD 组件有个问题!望得到高手解答!

找了很久 发现了一个比较满意的上传图片的组件,现在有个疑问,

ASPX页面创建SWFUPLOAD,如何在ASPX.CS页面中获取所有已加载成功的图片路径?
--------------------编程问答-------------------- 来个高手解答下吧 第一次用这个控件,不是很了解。

已经能够在UPLOAD.ASPX.CS里面写入文件操作了,我需要将操作后的文件,在DEFAULT.ASPX页面中全部读取出来,该如何操作? --------------------编程问答-------------------- http://hi.baidu.com/yujinhuahua/item/1d40172d47224c0f42634a81


我觉得你还是得先把说明看清楚 --------------------编程问答-------------------- 已加载成功的图片是什么意思?swfupload只是一个flash上传组件,它将选定的文件post提交到你指定的页面,然后你在这个页面中获取上传的文件,和普通上传控件是一样的。  --------------------编程问答-------------------- 楼主是想将上传的图片在页面上img现实吧,
SWFUPLOAD控件应该有回调函数 --------------------编程问答-------------------- 通过回调函数来执行上传方法的。PS: 上传方法要自己写的。 --------------------编程问答--------------------
引用 2 楼 z_dota 的回复:
http://hi.baidu.com/yujinhuahua/item/1d40172d47224c0f42634a81


我觉得你还是得先把说明看清楚



我看完了,已经成功运用在项目中了!我的意思是,我在页面中创建了一个IFRAME,然后再饮用默认的Default.aspx这个页面,并且成功保存到数据库中了,而且我在Default.aspx页面里创建了一个hidden域,用来保存所有上传的图片路径!

我的意思就是如何在页面中获取IFREAME中一个隐藏域的值。 --------------------编程问答--------------------
引用 3 楼 webdiyer 的回复:
已加载成功的图片是什么意思?swfupload只是一个flash上传组件,它将选定的文件post提交到你指定的页面,然后你在这个页面中获取上传的文件,和普通上传控件是一样的。


我的意思是,我在页面中创建了一个IFRAME,然后再饮用默认的Default.aspx这个页面,并且成功保存到数据库中了,而且我在Default.aspx页面里创建了一个hidden域,用来保存所有上传的图片路径!

我的意思就是如何在页面中获取IFREAME中一个隐藏域的值。 --------------------编程问答-------------------- AddToNews页面代码:

<tr>
        <td class="Editors">相关图片:</td>
        <td class="Editors" colspan="3">
            <iframe src="Swfup.aspx" frameborder="0" width="800" height="400"></iframe>
     </td>
    </tr>


Swfup.aspx代码

<div id="swfu_container" style="margin: 0px 10px;">
    <div>
<span id="spanButtonPlaceholder"><img src="images/upload.jpg" width="93" height="30" /></span>
    </div>
    <div id="divFileProgressContainer" style="height: 75px; display:inline;"></div>
    <div id="thumbnails" >
  

    </div>
    <input type="hidden" value="" id='test2' />
    </div>


我重写了默认的事件。

function uploadSuccess(file, serverData) {
try {
   
var progress = new FileProgress(file,  this.customSettings.upload_target);

progress.setStatus("上传成功");
progress.toggleCancel(false);
        progress.setImg("thumbnail.aspx?id="+serverData);
        document.getElementById("test2").value += "upload/" + serverData + ",";

} catch (ex) {
this.debug(ex);
}
}


现在我要如何获取这个IFRAME里面的test2的值? --------------------编程问答--------------------
引用 7 楼 q631520000 的回复:
我的意思是,我在页面中创建了一个IFRAME,然后再饮用默认的Default.aspx这个页面,并且成功保存到数据库中了,而且我在Default.aspx页面里创建了一个hidden域,用来保存所有上传的图片路径!

还是不太懂你的意思,SWFUpload上传时不需要回发,没必要把它放在iframe中,SWFUpload上传成功的文件名都可以通过javascript来获取 --------------------编程问答--------------------
引用 9 楼 webdiyer 的回复:
引用 7 楼 q631520000 的回复:
我的意思是,我在页面中创建了一个IFRAME,然后再饮用默认的Default.aspx这个页面,并且成功保存到数据库中了,而且我在Default.aspx页面里创建了一个hidden域,用来保存所有上传的图片路径!
还是不太懂你的意思,SWFUpload上传时不需要回发,没必要把它放在iframe中,SWFUpload上传成功的文件名都可以通过ja……


是这样的,58同城的图片上传功能就是页面嵌入到Iframe中的!我想尝试下这种操作!

大哥 你说的SWF上传的文件可以通过JS获取,请问下 如何获取~ 谢谢! --------------------编程问答-------------------- 还有个问题 我刚才尝试在页面中直接SWFUPLOAD组件,但是因为页面涉及到回传事件,我使用了MagicAjax来使页面无刷新,刚才使用发现必须屏蔽掉MagicAjax,否则无法加载FLASH  这是什么情况? --------------------编程问答--------------------
引用 10 楼 q631520000 的回复:
大哥 你说的SWF上传的文件可以通过JS获取,请问下 如何获取~ 谢谢!

swfupload有好多事件的,这些事件都可以用javascript来处理,事件中有相应参数可以获取返回值,上传成功后会触发uploadSuccess事件,这里有事件的详细说明:http://demo.swfupload.org/Documentation/#uploadSuccess
服务器端操作的例子:http://svn.swfupload.org/trunk/asp_net/upload.aspx.cs

我以前的项目中用这个来上传视频,但现在已经换成plupload了,plupload比swfupload功能要强大的多,而且swfupload已三四年没更新了,不知道作者是否还在维护 --------------------编程问答-------------------- AddToNews页面代码:

<tr>
        <td class="Editors">相关图片:</td>
        <td class="Editors" colspan="3">
            <iframe src="Swfup.aspx" frameborder="0" width="800" height="400"></iframe>
<input type="hidden" value="" id='test2' />
     </td>
    </tr>


Swfup.aspx代码

<div id="swfu_container" style="margin: 0px 10px;">
    <div>
<span id="spanButtonPlaceholder"><img src="images/upload.jpg" width="93" height="30" /></span>
    </div>
    <div id="divFileProgressContainer" style="height: 75px; display:inline;"></div>
    <div id="thumbnails" >
  

    </div>
        </div>


我重写了默认的事件。

function uploadSuccess(file, serverData) {
try {
   
var progress = new FileProgress(file,  this.customSettings.upload_target);

progress.setStatus("上传成功");
progress.toggleCancel(false);
        progress.setImg("thumbnail.aspx?id="+serverData);
        parent.document.getElementById("test2").value += "upload/" + serverData + ",";} catch (ex) {
this.debug(ex);
}
}


补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,