I have a browser based form like the one shown below.

enter image description here

The Student No and Name of the Student fields are not editable. I need to key-in numbers to the Total field.

The Student No field is numeric. You can ignore those asterisks.

I have the total numbers against student IDs in a spreadsheet.

What will be the best way to copy the numbers from the spreadsheet and paste them into the browser?

The student numbers in the spreadsheet may be in a different order than the browser.

Any spreadsheet should do, but I prefer to use LibreOffice. And for browsers, Google Chrome and FireFox are preferred.

  • 1
    Depends how lazy you're feeling. At first glance, your simplest method (especially if the ordering is different) is going to be manually copy and pasting. However, the software developer in me, especially if there are a lot of them and the form elements on the site are well named, would be using Javascript to put the values into an associative array and loop through them. – Jonno Dec 25 '15 at 4:14
  • @Jonno Yes, there are actually many. Couple of hundred per user with around forty users. So, a solution will benefit a big community. Plus, I am a lazy person. But, Javascript is rather deep water for me. I had minimal knowledge about this more than ten years back, now I am out of practice. – Masroor Dec 25 '15 at 4:37
  • @Jonno Yes, the form elements on the site are very very well named. Forgot to mention. – Masroor Dec 25 '15 at 4:54
  • Apologies, for some reason I didn't notice this message. Could you give me a dummy example of the form element naming and your data? – Jonno Jan 14 '16 at 13:00
  • Page source shows something like, id="record.studentId0", name="record[0].studentName" and id="record.totalNumber0". Are we looking for this? – Masroor Jan 14 '16 at 16:51

You can use a browser macro!

http://chrome-automation.com/ is pretty good and easy to use! You can even write your own scripts =)

  • Took a look at the suggested page. Somehow the solution does not pop up in my head, care to explain how automation is going to help in this case? – Masroor Jan 13 '16 at 2:02
  • Please read How do I recommend software for some tips as to how you should go about recommending software. Provide more than just a link, such as some additional information about the software itself, and how it can be used to solve the problem in the question. – DavidPostill Jan 16 '16 at 21:45
  • The browser and your default copy paste will not allow selective paste and separation into all those text box fields. Why?

    • Windows Copy - Takes the cells/ data into Clipboard as OLE or similar Windows object

    • Browser data is held as a HTML/ DHTML/ DOM object in Browser memory

  • At best you can copy-paste between the two, but for "data cell separation" you will need logic that does the following:

    • Assuming, that it can receive paste information/ data from Spreadsheet/ Clipboard, it needs to do so first
    • Parse through that data
    • Logically Map Structure of incoming data to text-box fields in browser

That is a lot of 'custom logic' that will have to be built to "run inside the browser".

From a solutions point of view, your best way to do this would probably be Browser extensions & plugins (Chrome & Firefox have brilliant) & Scripts that can run in engines such as GreaseMonkey/ TamperMonkey.

Someone, will have to code/ script that; learn yourself or find someone good with the above.

Even then the critical juncture would be the boundary where the Browser & its components begin to receive the data, and if so how, from the OS+Spreadsheet environment, as they are kind of walled sandboxes to each other.

For ideas, inspiration & seeing the capability limitations, I'd suggest looking at Chrome/ Firefox extensions & plugins that do a lot of "Auto-Fill" and automation in the Browsers.

I use LastPass, Evernote a lot as well as several GreaseMonkey scripts.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.