jQWidgets Forums

Forum Replies Created

Viewing 2 posts - 16 through 17 (of 17 total)
  • Author
    Posts

  • anubis76
    Participant

    Hi guys. Well, thanks for all the useful code. Here is an example of using jqxFileUpload with ASP.NET in C#.

    First create a WebService asmx. For this example, It’s called UploadFiles.asmx and the WebMethod is called Upload().
    Do note that in my web application I am setting an ID for each user, and storing it in a session variable. I wanted to create a folder for individual users, based on that ID, and upload their own files there:

    Client Code:
    (JQuery)

     $("#jqxFileUpload").jqxFileUpload({ browseTemplate: 'success',
            uploadTemplate: 'primary',
            cancelTemplate: 'danger',
            width: 300,
            uploadUrl: 'UploadFiles.asmx/Upload',
            fileInputName: 'fileToUpload'
     });
    
     $('#jqxFileUpload').on('uploadEnd', function (event) {
         var args = event.args;
         var fileName = args.file;
         var serverResponse = args.response;
    
         $("#spnResponse").html(serverResponse);
     });

    (HTML)

    <div id="jqxFileUpload"></div><br /><br />
    <span id="spnResponse"></span>

    Server-Side Code:
    (UploadFiles.asmx)
    <%@ WebService Language=”C#” CodeBehind=”~/App_Code/UploadFiles.cs” Class=”UploadFiles” %>

    (UploadFiles.cs)

    ....
    using System.IO;
    
    [WebService(Namespace = "http://tempuri.org/")]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    // To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line. 
    
    [System.Web.Script.Services.ScriptService]
    public class UploadFiles : System.Web.Services.WebService {
    
        public UploadFiles () {
    
            //Uncomment the following line if using designed components 
            //InitializeComponent(); 
        }
    
        [WebMethod(EnableSession = true)]
        public string Upload() {
            string appid = HttpContext.Current.Session["appid"].ToString();
            string returnTxt;
            
            if (!System.IO.Directory.Exists(Server.MapPath(@"~/uploads/" + appid)))
            {
                System.IO.Directory.CreateDirectory(Server.MapPath(@"~/uploads/" + appid));
            }
    
            string filepath = Server.MapPath("~/uploads/" + appid);
            HttpFileCollection uploadedFiles = HttpContext.Current.Request.Files;
            returnTxt = string.Empty;
    
            for (int i = 0; i < uploadedFiles.Count; i++)
            {
                HttpPostedFile userPostedFile = uploadedFiles[i];
    
                try
                {
                    if (userPostedFile.ContentLength > 0)
                    {
                        returnTxt += "<u>File #" + (i + 1) + "</u><br>";
                        returnTxt += "File Content Type: " + userPostedFile.ContentType + "<br>";
                        returnTxt += "File Size: " + userPostedFile.ContentLength + "kb<br>";
                        returnTxt += "File Name: " + userPostedFile.FileName + "<br>";
    
                        userPostedFile.SaveAs(filepath + "\\" + Path.GetFileName(userPostedFile.FileName));
                        returnTxt += "Location where saved: " + filepath + "\\" + Path.GetFileName(userPostedFile.FileName) + "<p>";
                    }
                }
                catch (Exception Ex)
                {
                    returnTxt += "Error: <br>" + Ex.Message;
                }
            }
    
            return returnTxt;
        }
        
    }

    Hope this is useful for somebody.

    Regards,
    AJ

    in reply to: Control not working Control not working #67085

    anubis76
    Participant

    Hi Dimitar,

    Thank you for your reply. I re-checked everything and found the problem. I was using some of the script files from the previous jqWidgets as I had re-used code from a previous project that used the earlier version of jqWidgets. After replacing jqxbuttons.js from 3.7.0, it started working! Now I feel dumb.

    Thanks again 🙂

Viewing 2 posts - 16 through 17 (of 17 total)