-1

たとえば、JavaScriptでコンテンツ変数を作成します。この変数には、特定の値を持つhtmlタグが含まれます。ボタンが押されたときに、どうすればそれをdivに入れることができますか。

例えば ​​:

これは私が使いたいコンテンツです:

var contentString = '<div id="info">'+
'<h2><b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Info:</b></h2>'+
'<div id="bodyContent">'+ 
'<div style=width:220px;display:inline-block;>'+
'<p>&nbsp; Name: '+ this.name + '</p>' +
'<p>&nbsp; Last name: '+ this.last+ '</p>' +
'<p>&nbsp; 
'</div>'+
'</div>'+
'</div>'+
'</form>';

そして私はそれを入れたいです:<div id=something"></div> javascriptで私は次のようなものを持つことができます:

$("#button").on('click', function() {
// What to put in here?
});
4

4 に答える 4

8

ボタンが押されたときに、どうすればそれをdivに入れることができますか。

このような:

$("#button").on('click', function() {
  $('#something').html(contentString);
});

についての詳細html();

于 2012-07-04T19:06:08.667 に答える
2

私が誤解していなければ、これはうまくいくでしょう:

$("#button").on('click', function() {
    $('#something').html(contentString);
});

もちろん、これは、の要素があることを前提としていますidbuttonただし、そうでないと、そのjQueryを配置しなかったでしょう)。

JSフィドルデモ

参照:

于 2012-07-04T19:06:20.807 に答える
2

こんなふうになります:

$("#button").on('click', function() {
   $("#something").html(contentString);
});
于 2012-07-04T19:06:46.370 に答える
1

マークアップを修正する必要があります。不均衡な要素があり、エスケープせずに文字列に新しい行を含めることはできません。代わりにこれを試してください:

var contentString = '<div id="info">'+
'<h2><b style="text-indent: 40px">Info:</b></h2>'+
'<div id="bodyContent">'+ 
'<div style="width:220px;display:inline-block;">'+
'<p style="text-indent: 1em">Name: '+ this.name + '</p>' +
'<p style="text-indent: 1em">Last name: '+ this.last+ '</p>' +
'</div>';

をスキップして&nbsp;、スタイル属性に置き換えたことに注意してください。ただし、実際にはこれらのスタイルをスタイルシートに入れる必要があります。

$("#button").on('click', function() {
 $('#something').html(contentString);
});

ボタンのクリックイベントが発生したときにcontentStringの変数が評価されないことに注意してください。つまり、this.nameとthis.lastは変更されません。クリック時にこれらの値も更新する必要がありますか?

于 2012-07-04T19:06:19.963 に答える