1

以下に指定されたコード以外に、動的テキストを html 文字列に挿入するより良い方法はありますか?

var code = 'siteCode1';

文字列としての html コード:

existing: '<p>Log in with your'+ eval("siteVarObj('+code+').siteName") +'account</p>',


function siteVarObj(siteCode){
            if(siteCode === 'siteCode1'){
                this.siteName = 'google.com';
                this.siteContactUsURL = '';
            }else if(siteCode === 'siteCode2'){
                this.siteName = 'stackoverflow.com';
                this.siteContactUsURL = '';
            }
            return this;
        }
4

2 に答える 2

5

これはうまくいくはずです:

var code = 'siteCode1';
var myHTMLString = '<p>Log in with your '+ siteVarObj(code).siteName + ' account</p>';
于 2012-12-20T19:59:42.107 に答える
0

evalは、不適切に使用されるとインジェクション攻撃のコードを開くため、通常、eval内からの入力の実行を避けることをお勧めします。

于 2012-12-20T20:04:05.913 に答える