Reputation: 502
javascript based tag ( type ='file'
) created
and add one attribute in that tag
that attribute name onchange
, i will assign alert
But alert is not come when choice the new file in internet explore.
choicefile.setAttribute("onChange", "alert('test')");
Upvotes: 4
Views: 16670
Reputation: 136
try onclick="javascript:alert('test');" instead of onchange. Old ie versions and compatibility modes don't support onchange very well.
Upvotes: 0
Reputation: 250932
There is actually a difference between setAttribute
and attachEvent
. Here is an example using attachEvent
(for IE) and addEventListener
(standards) to add the event.
Also, not that the event handler is a function, rather than a string:
var eventHandler = function () {
alert("Test");
}
if (choicefile.addEventListener) {
choicefile.addEventListener('change', eventHandler , false);
} else if (choicefile.attachEvent) {
choicefile.attachEvent('onchange', eventHandler );
}
Upvotes: 1
Reputation: 17910
You can do two ways,
1.. Using HTML, add onchange
event inline
<input type="file" id="file_select" name="file_select" value="" onchange="alert('File selected')" />
Demo: http://jsfiddle.net/CS3xJ/1/
2.. Using JS,
choicefile.onchange = function(){
alert('File selected')
}
Demo: http://jsfiddle.net/CS3xJ/2/
Upvotes: 3
Reputation: 12683
Your code seems correct. Something particular with IE is, if you put higher security level, you need to allow scripts and activeX content when you load the website.
Upvotes: 0