0

DrupalページにJavaScriptを追加して、アドレスバーなどのないポップアップでリンクを開こうとしています.JSを「フルHTML」ビューに埋め込むことはできないことを学びました。(スクリプト タグは HTML コメントでコメント アウトされます) そこで、PHP 関数 drupal_add_js() を使用して PHP モードのエントリを使用しましたが、HTML がレンダリングされると、PHP コードは HTML コメントでコメント アウトされます。すなわち

<?php
$myscript = 'function openWindow(){
var browser=navigator.appName;
if (browser==”Microsoft Internet Explorer”)
{
window.opener=self;

}
window.open("/page/terms-use","null","width=900,height=750,
toolbar=no,scrollbars=no,location=no,resizable =yes");
window.moveTo(0,0);
window.resizeTo(screen.width,screen.height-100);
self.close();
}'; 

drupal_add_js($myscript, 'inline'); //change the 2nd param to 'theme' if $myscript points to a theme .js file
?>

ページを表示すると、ブラウザに次のように表示されます。

<!--?php
$myscript = 'function openWindow(){
var browser=navigator.appName;
if (browser==”Microsoft Internet Explorer”)
{
window.opener=self;

}
window.open("/page/terms-use","null","width=900,height=750,
toolbar=no,scrollbars=no,location=no,resizable =yes");
window.moveTo(0,0);
window.resizeTo(screen.width,screen.height-100);
self.close();
}'; 
drupal_add_js($myscript, 'inline'); //change the 2nd param to 'theme' if $myscript points to a theme .js file
?-->

PHP フィルター モジュールを使用して、ページ作成者のユーザーが PHP を使用できるようにしましたが、それでも同じことが起こります。これはリッチ テキスト エディターのせいですか? しかし、なぜPHPコードモードでも起こるのでしょうか?

4

1 に答える 1

1

これは通常、カスタム モジュールまたはテーマ関数を介して処理されます。しかし、これがノードのフィールドに入れられていると仮定すると、コードは機能するはずです。問題は、テキスト形式の設定である可能性があります。これが Drupal 7 であると仮定すると、/admin/config/content/formats に移動できます。PHP形式を使用していると思います。そのため、この形式の設定を調べて、PHP フィルターが有効になっていることを確認してください。

于 2013-06-20T19:15:31.803 に答える