|
From: dunerunner on 5 May 2008 09:38 Hi, I have a situation where I have a button with an onclick event containing a function and I need to append a function to that event. For example, I have: <button id="btn" onclick="func1(param);">The Button</button> When the user clicks another button, I want to essentially have the button above look like: <button id="btn" onclick="func1(param);func2(param);">The Button</ button> Is this possible? If so, can I get some guidance, please? Thanks, Tim
From: Ugo on 5 May 2008 10:24 > I have a situation where I have a button with an onclick event > containing a function and I need to append a function to that event. > > For example, I have: > > <button id="btn" onclick="func1(param);">The Button</button> > > When the user clicks another button, I want to essentially have the > button above look like: > > <button id="btn" onclick="func1(param);func2(param);">The Button</ > button> > > Is this possible? Yes e.g. <button id="btn2" onclick="document.getElementById('btn').onclick = function(){ func1(param);func2(param); }">change</button>
From: dunerunner on 5 May 2008 11:34 Thank you for your quick and informative answer. However, I failed to mention a very important piece of the puzzle. The button to which I need to add the new event is going to be created in the same onclick event. I'm finding out in that case, javascript doesn't even recognize the new component until the page refreshes. So, I can't do this without changing the function that adds the button, which I'm not allowed to do. Oh well, I'll continue banging away at it. On May 5, 10:24 am, Ugo <priv...(a)nospam.it> wrote: > > I have a situation where I have a button with an onclick event > > containing a function and I need to append a function to that event. > > > For example, I have: > > > <button id="btn" onclick="func1(param);">The Button</button> > > > When the user clicks another button, I want to essentially have the > > button above look like: > > > <button id="btn" onclick="func1(param);func2(param);">The Button</ > > button> > > > Is this possible? > > Yes > > e.g. > > <button id="btn2" onclick="document.getElementById('btn').onclick = > function(){ func1(param);func2(param); }">change</button>
From: Ugo on 5 May 2008 11:52 >>> I have a situation where I have a button with an onclick event >>> containing a function and I need to append a function to that event. >>> For example, I have: >>> <button id="btn" onclick="func1(param);">The Button</button> >>> When the user clicks another button, I want to essentially have the >>> button above look like: >>> <button id="btn" onclick="func1(param);func2(param);">The Button</ >>> button> >>> Is this possible? >> >> Yes >> e.g. >> <button id="btn2" onclick="document.getElementById('btn').onclick = >> function(){ func1(param);func2(param); }">change</button> >> > Thank you for your quick and informative answer. However, I failed to > mention a very important piece of the puzzle. The button to which I > need to add the new event is going to be created in the same onclick > event. I'm finding out in that case, javascript doesn't even > recognize the new component until the page refreshes. So, I can't do > this without changing the function that adds the button, which I'm not > allowed to do. > > Oh well, I'll continue banging away at it. look if I understand... you have a button so: <button id="btn" onclick="func1(param);">The Button</button> and you want it becomes so: <button id="btn" onclick="func1(param);func2(param);">The Button</button> after first click, is it right? if so, and if you may append a function firstly: <button id="btn" onclick="func1(param);changeEvent(this)"> The Button</button> function changeEvent(elem) { elem.onclick = function() { func1(param);func2(param); } }
From: dunerunner on 5 May 2008 15:11 On May 5, 11:52 am, Ugo <priv...(a)nospam.it> wrote: > >>> I have a situation where I have a button with an onclick event > >>> containing a function and I need to append a function to that event. > >>> For example, I have: > >>> <button id="btn" onclick="func1(param);">The Button</button> > >>> When the user clicks another button, I want to essentially have the > >>> button above look like: > >>> <button id="btn" onclick="func1(param);func2(param);">The Button</ > >>> button> > >>> Is this possible? > > >> Yes > >> e.g. > >> <button id="btn2" onclick="document.getElementById('btn').onclick = > >> function(){ func1(param);func2(param); }">change</button> > > > Thank you for your quick and informative answer. However, I failed to > > mention a very important piece of the puzzle. The button to which I > > need to add the new event is going to be created in the same onclick > > event. I'm finding out in that case, javascript doesn't even > > recognize the new component until the page refreshes. So, I can't do > > this without changing the function that adds the button, which I'm not > > allowed to do. > > > Oh well, I'll continue banging away at it. > > look if I understand... > > you have a button so: > <button id="btn" onclick="func1(param);">The Button</button> > and you want it becomes so: > <button id="btn" onclick="func1(param);func2(param);">The Button</button> > after first click, is it right? > Sorry, that's not right. What I have to begin with is button A only. User clicks button A. In the onclick event for button A I have a function that creates button B. The function that creates button B attaches an onclick event to button B. After button B is created (while still in the onclick event handler) I need to add another function to button B's onclick event. Sorry if this isn't clear, but it's a strange requirement. Thanks for trying to help. > if so, and if you may append a function firstly: > <button id="btn" onclick="func1(param);changeEvent(this)"> > The Button</button> > > function changeEvent(elem) > { > elem.onclick = function() > { > func1(param);func2(param); > } > > }
|
Next
|
Last
Pages: 1 2 Prev: Unknown runtime error Next: how to force page down to see AJAX return info? |