人生のプチ美学を教えてください!!

下の様にjavaScriptでボタンを追加したいのですが、
onclickイベントがHTMLにかかれません。
どうすればよろしいでしょうか。

よろしくお願いします。

var ele = document.createElement('input');
ele.type = 'button';
ele.value = 'ご意見へ';
ele.name = 'fNext';
ele.onclick = "sendRequest('FE0041')";
objct[0].parentNode.appendChild(ele);

A 回答 (3件)

既に回答がされていますが…



>onclickイベントがHTMLにかかれません。
ele.onclick = "sendRequest('FE0041')";
では文字列の『sendRequest('FE0041')』がonclick属性として設定されます。
append後にその要素のonclick属性を表示させてみれば、一応、設定されているようです。

ただし、文字列なのでスクリプトとしては実行されません。

function sendRequest(a) {} のような処理を実行したければ、No1様のような方法をとればよろしいかと。

この回答への補足

ありがとうございます。
ただ、FireFoxでは、できないのですが。

補足日時:2010/10/08 10:24
    • good
    • 0
この回答へのお礼

すみませんでした。
FFでも可能でした。
本当に助かりました。
ありがとうございます。

お礼日時:2010/10/08 11:09

 if('undefined' !== typeof window.addEventListener)


  ele.addEventListener('click',(function(parm){
return function(){sendRequest(parm)};
})('FE0041'),false);
 else if ('undefined' !== typeof window.attachEvent)
  ele.attachEvent('onclick',(function(parm){
return function(){sendRequest(parm)};
})('FE0041'))

 function sendRequest(parm){
  alert(parm);
 }
    • good
    • 0

>ele.onclick = "sendRequest('FE0041')";


では文字列を設定しているだけなので、何も起きないと思います。

ele.onclick = function() { sendRequest('FE0041') };
としたらどうでしょうか?
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!