5
<input type='text' onchange="reportAnswer(1, this.value);" 
onkeyup="this.onchange();" onpaste="this.onchange();" 
oncut="this.onchange();" 
onclear = "this.onchange();" />

enter image description here

How to capture that change? This is IE11.

P.S. I added onclear handler because run out of ideas what to do.

Maks
  • 3
  • 3
Kosmo零
  • 4,001
  • 9
  • 45
  • 88
  • What's providing that `[x]`? It's not something most browsers usually provide. – T.J. Crowder Sep 15 '14 at 12:58
  • The basic idea is "clear input field value when some event happens. like click `[x]`". Take a look at the answer to question [How do I put a clear button inside my HTML text input box like the iPhone does?](http://stackoverflow.com/questions/2803532/how-do-i-put-a-clear-button-inside-my-html-text-input-box-like-the-iphone-does) – shawnzhu Sep 15 '14 at 12:59
  • @shawnzhu: The OP did say he just added `onclear` because he ran out of ideas. – T.J. Crowder Sep 15 '14 at 12:59
  • @T.J.Crowder - This is IE11. – Kosmo零 Sep 15 '14 at 13:00
  • @Kosmos: IE11 doesn't add that for me: http://jsbin.com/hicave/1 – T.J. Crowder Sep 15 '14 at 13:01

3 Answers3

5

You haven't said what's providing that [x], which is probably relevant, but the one event you haven't tried yet is input so: Live Example

<input type='text'
    onchange="reportAnswer(1, this.value);"
    onkeyup="this.onchange();"
    onpaste="this.onchange();"
    oncut="this.onchange();"
    oninput="this.onchange();" />

(No idea if it works, IE11 doesn't add that box for me on Windows 8.1.)

More likely, though, you need to hook into something provided by whatever it is that's providing that [x].

T.J. Crowder
  • 1,031,962
  • 187
  • 1,923
  • 1,875
4

You can use the event of "oninput":

// Try to change value of the input below
<input id="input1" />

var input = document.getElementById("input1");
input.oninput = function(){alert("Value changed");}
CHP
  • 51
  • 3
0

so its been 8 years but had the same problem and this was the first answer to show up found the answer in to this question here: How do you detect the clearing of a "search" HTML5 input?

tl:dr

 $(some-input).on("search", function() { }); 

does the trick

Ilan
  • 1
  • 2