2010-10-07 2 views
2

Я использую JavaScript хелперы в Zend Framework в формы:Как сообщить Netbeans, что раздел кода является Javascript?

<?php $this->headScript()->captureStart(); ?> 
//Javascript here 
<?php $this->headScript()->captureEnd(); ?> 

//Rest of view here 

Проблема заключается в том, что Netbeans продолжает жаловаться на проблемы кода в блоке, потому что он думает, что это HTML, а не Javascript, блок. Плюс синтаксическая раскраска нарушена.

У Netbeans уже есть специальный комментарий, который можно использовать для применения типа к переменной, если он не может быть разрешен Netbeans автоматически, чтобы сказать, что мы пишем Javascript в этом диапазоне, а не в формате HTML?

ответ

7

Что-то вроде этого:

<?php $this->headScript()->captureStart(); ?> 
//<script type="text/javascript"> 
var validJSsyntax = true, 
    netbeansJShighlighting = true, 
    problem = 'solved'; 
//</script> 
<?php $this->headScript()->captureEnd(); ?> 

Конечно, это будет производить две бесполезные строки в вашем выводе JS, но вы можете изменить captureEnd() метод раздеться тех, для вас.

+0

// используется для комментариев и является некорректным синтаксисом для HTML –

+0

Он используется в комментарии в случае, если он появится в '

0

Я был на самом деле просто читать об этом вчера в their blog:

Их HTML в PHP разборе был слоеным, особенно с отступом неправильно короткий/альтернативный кода формы, но последние nightly builds (я полагаю, те после 201010060000) имеет улучшения в этой области. Я еще не пробовал, но выстрелил.

+0

Речь идет о том, как обрабатываются PHP-теги в целом - это не говорит Netbeans о Javascript. –

4

Насколько мне известно, эта функциональность еще не реализована в текущей версии среды IDE NetBeans, которая составляет 6.9.1. Я могу показать вам обходной путь, с помощью которого вы можете обмануть среду IDE NetBeans, чтобы выделить Javascript как раздел сценария, а также поддерживать процессор PHP счастливым. Это будет выглядеть следующем фрагменте кода:

<?php $this->headScript()->captureStart(); ?> 
    <?php if(false) {?><script><?php } ?> 
     // keep Javascript here 
    <?php if(false) { ?></script><?php } ?> 
    <?php $this->headScript()->captureEnd(); ?> 

Я испытал это в среде IDE NetBeans 6.9.1

+0

+1 для решения проблемы решения. –

-1

печати проблемный код PHP

<script <?PHP echo 'type="text/template"?> id="Template-1"> 
    //your code here 
</script> 

Если вы печатаете все сценария тег PHP, NetBeans отлично форматирует HTML-теги

+0

Если NetBeans думает, что это подходящее решение, я бы сейчас его отказал. – Synchro

Смежные вопросы