See here for a similar post on using jQuery to clear forms: Resetting a multi-stage form with jQuery. You may also be running into an issue where the values are being repopulated by the struts value stack. In other words, you submit your form, do whatever in the action class, but do not clear the related field values in the action class.
In this scenario the form would appear to maintain the values you previously submitted. If you are persisting these in some way, just null each field value in your action class after persisting and prior to returning SUCCESS. Stack Overflow for Teams — Collaborate and share knowledge with a private group.
Create a free Team What is Teams? Collectives on Stack Overflow. Learn more. Asked 12 years, 3 months ago. Active 5 months ago. Viewed k times. How can I prompt a download for a user when they click a link. Can this be done with jQuery, if so, how? Or should this be done with PHP or something instead? RedBlueThing Dodinas Dodinas 6, 22 22 gold badges 73 73 silver badges bronze badges.
Add a comment. Active Oldest Votes. Thanks, this is what I was looking for. I usually use "preventDefault", just left it out above because I was being lazy. Works great, but get some MIME type errors. Curious if there are any ways to get past them? Article Contributed By :. Easy Normal Medium Hard Expert. Writing code in comment? Please use ide. Load Comments. What's New. Most popular in JavaScript. Most visited in JQuery. How to change selected value of a drop-down list using jQuery?
How to change the background color after clicking the button in JavaScript? Laura Chesches Laura Chesches 2, 17 17 silver badges 15 15 bronze badges. Also the Edge 13 implementations is buggy because the name of the file is ignored and instead you get a file with an id as the name. In my opinion, this is the correct answer to the question.
The other answers make sense if you have to support older browsers and need a workaround. I dont' think is needed. It's already setting the 'src:url' in the creation step. I had to used "window. Maybe because I wanted to download 12 things at the same time? Does not do anything in Chrome — jjxtra. This is base javascript function, so can be used in any platform where backend is in Javascript window. Rohit Parte Rohit Parte 2, 21 21 silver badges 17 17 bronze badges.
This is probably the easiest solution if you can set the contentType yourself. I use it as: window. If admin doesn't want to show the URL to the user than?
Works on Chrome, Firefox and IE8 and above. Ismail Farooq 5, 1 1 gold badge 23 23 silver badges 43 43 bronze badges. EL missaoui habib EL missaoui habib 1, 1 1 gold badge 14 14 silver badges 24 24 bronze badges. This also works if you don't append the link to the DOM. Unless headers returned from the server indicate to do otherwise, this will simply navigate to url , not download from it. Aaron Lelevier Aaron Lelevier Where is the download code? You're just adding an iframe — DevAB.
This does not work if your filePath has a querystring since submitting a form will overwrite the querystring in the action attribute. This also closes the websockets. This looks like a really complicated way to set window. Just window. Regardless of whether there's a downside to this solution, per se, you haven't provided any upside to using this over a link. And there is a downside: you can't use the download attribute this way to tell the browser that you want a download regardless of what headers the server returns, which you can do with an a element.
I ended up using the below snippet and it works in most browsers, not tested in IE though. Abk Abk 1, 1 1 gold badge 19 19 silver badges 28 28 bronze badges. What's the point of using MouseEvent here instead of always using click? And why append the link to the document before clicking it? Maybe this has advantages over the simpler approach shown in stackoverflow. It's been a while I posted this answer. I can't remember if there's any reason behind those unnecessary lines of code.
Maciej Krawczyk Maciej Krawczyk 11k 5 5 gold badges 32 32 silver badges 45 45 bronze badges. La masse La masse 1, 1 1 gold badge 8 8 silver badges 24 24 bronze badges. How is this an improvement? It appears to simply be a more complicated way of doing the same thing. Urmas Repinski Urmas Repinski 1 1 silver badge 6 6 bronze badges.
File is getting downloaded but its always corrupt. Any suggestions? Thank you — Shrivaths Kulkarni. Maybe just have your javascript open a page that just downloads a file, like when you drag a download link to a new tab: Window. This creates a popup window, which most browsers block — Ashton Wiersdorf. This is just the same approach as shown in Imagine Breaker's answer years earlier, but with the added downside of requiring jQuery.
Donny V. Itamar Smirra Itamar Smirra 46 5 5 bronze badges. It just requires a little adjusting: The PHP file can call itself. I don't see the relevance here. Ifch0o1 Ifch0o1 1 1 gold badge 12 12 silver badges 31 31 bronze badges. Fawad Ali Fawad Ali 5 5 silver badges 11 11 bronze badges. Note: Not supported in all browsers. Xero Kael Xero Kael 12 12 bronze badges.
Community Bot 1 1 1 silver badge. Hitesh Hitesh 3, 10 10 gold badges 37 37 silver badges 80 80 bronze badges. Hope this could help someone out there.
This whole function body is just an overcomplicated way of doing window. The link you create isn't used for anything. The Overflow Blog.
Introducing Content Health, a new way to keep the knowledge base up-to-date. Podcast what if you could invest in your favorite developer?
0コメント