Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

onchange with alert not working in ie

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')");
like image 956
sabari Avatar asked Sep 02 '25 15:09

sabari


2 Answers

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/

like image 70
Muthu Kumaran Avatar answered Sep 05 '25 05:09

Muthu Kumaran


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 );
}
like image 42
Fenton Avatar answered Sep 05 '25 06:09

Fenton