2

javascript を使用して HTML ページを作成していますが、ボタンのクリック時に関数を呼び出すことができません。

var alernative = "plot1";
var buttonvalue= "mybutton";
 function callme()
 {alert("hello");}   

 $('#' + alernative).html('<div><input style="float:right;" type="button" value="' + buttonvalue+ '" onclick="' +   callme() + '";></div>');

上記のコードでは、ボタンを作成し、その値を指定してボタンの onclick 関数を呼び出していますが、ページが読み込まれるとアラートが表示され (発生しないはずです)、ボタンのクリック時にアラートが表示されません。

提案や助けを期待しています。

4

2 に答える 2

6

関数名を文字列の一部として渡す必要があります。

$('#' + alernative).html('<div><input style="float:right;" type="button" value="' + buttonvalue+ '" onclick="callme();"></div>');
于 2013-05-30T14:10:15.997 に答える
0

文字列で HTML を書くのは悪い習慣です。DOM が存在する理由の 1 つは!

var input = $('<input/>', {
    type: "button",
    style: "float: right",
    value: buttonValue
}),
    element = $('<div/>').append(input);
input.click(function () {
    callme();
});
$('#test').html(element);
于 2013-05-30T14:17:07.520 に答える