Click here to Skip to main content
15,888,082 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
I am working on uploading mp3 files to the web server (eventually to the cloud). The AjaxFileUpload works great, except I need it to do a little more to collect some meta data about the files I am uploading. Example: song name, song genre, artist name, part of album(y/n), etc. This data will be recorded in a SQL table.

Using the OnUploadStart event, I can do any validation for any fields I want to add. The problem I have is, when I add multiple songs at once, how do I generate the extra text input fields to correspond to each file? Meta data for a file could be extensive, so I would like to add buttons to the uploader that will trigger a modal popup or something, and I'll input my meta data there.

This is what I currently have...
http://www.cooldrew.com/fileuploadsample/fileupload.jpg

And this is what I want to get too...
http://www.cooldrew.com/fileuploadsample/fileupload2.jpg


Adding the buttons in the right place is my first challenge. Assuming I can do this, the 2nd challenge is, after entering the data in each pop-up for each row, how do I tie the data I enter to each file?

Thanks for any advice.
Posted
Updated 29-Mar-14 12:51pm
v3
Comments
Very nice requirement, but what have you tried for this?
Motley Drew 29-Mar-14 23:24pm    
I have the file upload working in my first screenshot, but I do not know how to add the new buttons in the second screenshot. I doctored that up in PhotoShop to better explain what I am trying to do. I have no idea how to do this. I thought about overlaying buttons in a DIV with absolute positioning, but that won't insert the space I need. I find it hard to believe that I'm the first guy that is trying to upload files along with textual attributes about the file I'm uploading.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900