質問
私は以下のextjs5のコードをテストする:
Ext.create('Ext.window.Window', {
title: 'try extjs text area',
width: 900,
height: 500,
layout: 'fit',
items: [{
xtype: 'textarea',
value: ' The first line \n The second line',
border: true,
autoScroll: true,
draggable: true
}]
}
).show();
.
問題はテキスト内容に \nを含みます。 値: '2行目 "、
とそれはエラーを得るでしょう: SyntaxError:未終止文字列リテラル
しかし私はTextareaに新しい線を表示する必要があります。これの正しい解決策は何ですか?
BTW、この問題はツリーパネルレンダリングが原因で発生します。
MainController.js:
では、以下のようなレンダリング方法があります。 renderLogs: function (logs, p, record) {
return logs? '<div><img src="default-more.png" /
onclick="Ext.create(\'Ext.window.Window\', /
{ title: \'try extjs text area\', /
width: 900,height: 500, /
layout: \'fit\', /
items: [{xtype: \'textarea\', /
value: \'"+logs+"\', /
border: true,autoScroll: true,draggable: true}]}).show(); "> /
</img></div>' : '';
}
.
だから、ログの場合 \nの場合は、エラーが発生します - SyntaxError:未終了文字列リテラル
解決
Inside 'items'パラメータ:テキストは 'textarea'の 'sub-parameter' '、' value 'が正しいです。それが問題でした。正しいコードは次のとおりです。
Ext.create('Ext.window.Window', {
title: 'try extjs text area',
width: 900,
height: 500,
layout: 'fit',
items: {
xtype: 'textarea',
value: ' The first line \n The second line',
border: true,
autoScroll: true,
draggable: true
}}
).show();
所属していません StackOverflow