如何使用Asp.Net从文件夹加载页面刷新图像

时间:2012-02-08 19:15:50

标签: asp.net image html page-refresh

我想知道,在Page refresh我希望display 40+ images existed已经server folder显示在我Preview.ImageUrl = "~/DownloadImages/" & Session("tempDir").ToString & "/" & filename 中已经存在的div控件并将这些图像添加到该div

截至目前,我可以使用如下所示显示一个图像:

<script type="text/javascript">
        $(function () {
            $("#<%=uploader.ClientId%>").plupload({
                runtimes: 'gears,flash,silverlight,browserplus,html5',
                url: 'Default.aspx',
                max_file_size: '10mb',
                max_file_count: 21,
                chunk_size: '1mb',
                unique_names: true,
                rename: true,
                dragdrop: true,
                filters: [
            { title: "Image files", extensions: "jpg,gif,png" },
            { title: "Zip files", extensions: "zip" }
        ],

                flash_swf_url: 'js/plupload.flash.swf',


                silverlight_xap_url: 'js/plupload.silverlight.xap'
            });



            $('form').submit(function (e) {
                var uploader = $('#<%=uploader.ClientId%>').plupload('getUploader');


                if (uploader.files.length > 0) {

                    uploader.bind('StateChanged', function () {
                        if (uploader.files.length === (uploader.total.uploaded + uploader.total.failed)) {
                            $('form')[0].submit();
                        }
                    });

                    uploader.start();
                }
                else
                //alert('You must at least upload one file.');

                    return false;
            });



            var uploader = $('#<%=uploader.ClientId%>').plupload('getUploader');
            uploader.bind('FilesAdded', function (up, files) {

                var i = up.files.length,
                maxCountError = false;

                plupload.each(files, function (file) {
                    setTimeout(function () {
                        up.start();
                    }, 100);



                    if (uploader.settings.max_file_count && i >= uploader.settings.max_file_count) {
                        $.msgBox({
                            title: "Info",
                            content: "Max Files Reached.",
                            type: "info",
                            showButtons: true,
                            opacity: 0.1,
                            autoClose: false
                        });
                        uploader.removeFile(up.files[i - 1]);
                    } else {

                    }
                });

            });


            var uploader = $('#<%=uploader.ClientId%>').plupload('getUploader');
            uploader.bind('FileUploaded', function (up, file, res) {

                $('#<%=thumbs.ClientId%>').append("<div id=" + file.id + "><a href='Uploads/" + document.getElementById("<%=currentDirectory.ClientId%>").value + "/" + file.name + "' rel='group1'><img class='clickImage' src='Uploads/" + document.getElementById("<%=currentDirectory.ClientId%>").value + "/" + file.name + "' width='75' height='50' data-full='Uploads/" + document.getElementById("<%=currentDirectory.ClientId%>").value + "/" + file.name + "'/></div>");
                if (uploader.files.length === (uploader.total.uploaded + uploader.total.failed)) {
                    showStickySuccessToast();
                }

            });
        });




        function randomString(length) {
            var chars = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz'.split('');

            if (!length) {
                length = Math.floor(Math.random() * chars.length);
            }

            var str = '';
            for (var i = 0; i < length; i++) {
                str += chars[Math.floor(Math.random() * chars.length)];
            }
            return str;
        }
    </script>

我想知道更好的解决方案!

以下是图像的生成方式:

{{1}}

如果我知道用户可以添加多少图像,那么这很容易,但很难说这是主要问题。

1 个答案:

答案 0 :(得分:1)

你可以使用Literal或Image Controls并将它们添加到Panel上(如果在aspx文件中添加runat =“server”,甚至可以添加div)

<div id="existingDiv" runat="server"></div>

我更喜欢图像控件...这样的事情:(这当然是一个非常简单的例子)

foreach(string imageURL in urlsList)
{
    var img = new System.Web.UI.WebControls.Image();
    img.ImageUrl=imageURL;
img.Width = 200;
img.Height = 100;
this.div1.Controls.Add(img);
}

编辑: 在urlsList里面我加载了这样的url:(VB)

Dim urls As New List(Of String) 'I dont know if you need another parenthesis here on VB...
urls.Add("imageurl1")
urls.Add("imageurl2")