在将PHP与Javascript混合时,我一直在寻找解决NetBeans(7.1.1)代码突出显示中的错误错误的方法。我也使用Notepad ++,这对此没有任何问题。
示例:
function showUpload<?php echo $upload;?>(file) { /* JS-code */ }
或:
$('.option-help').qtip({
content: function(api) { return $(this).parent().attr('data-tip'); },
<?php if ($help == 'icon') { ?>
show: { event: 'click' },
<?php } ?>
position: { my: 'bottom left', at: 'top left', of: $(this) }
});
我确实找到了一些work-arounds,但我拒绝更改我的IDE代码! (IDE应该帮助我编写代码,而不是让事情变得更加困难)
有谁知道这个问题的实际解决方案?
答案 0 :(得分:3)
如果您在文件中仅使用JavaScript + PHP组合(没有HTML),只需打开要在其中突出显示JavaScript语法的文件,然后添加以下行:
//<script type="text/javascript">
在打开第一个PHP标记之前,在页面顶部:
//<script type="text/javascript">
<?php
/*The rest of the code..*/
?>
此文件中的所有JavaScript代码都应正确突出显示。
如果您在文件中间某处有HTML代码,则需要在HTML代码之前关闭JavaScript代码,并在HTML代码之后再次重新打开它:
//<script type="text/javascript">
<?php
/*The rest of the code..JavaScript + PHP*/
//</script>
<h1>HTML code</h1><!--HTML code only-->
<p>Bla bla..</p>
//<script type="text/javascript">
/*JavaScript + PHP code again*/
?>
如果您不希望将这些注释打印到最终的HTML文档中,您可以在文档的顶部创建一个永远不会被您使用的虚假PHP函数,如下所示:
<?php
function higlightJavaScriptCode(){
?>
//<script type="text/javascript">
<?php
}
/*The rest of the code..*/
?>
答案 1 :(得分:0)
@gradosevic在上面钉了一下,我只会添加自己的超紧凑版本,该版本不会向浏览器输出任何内容:
// Fix Netbeans' jQuery highlighting in mixed PHP/JS. See https://stackoverflow.com/a/21440810/209859
function higlightJavaScriptCode(){?>//<script type="text/javascript"><?php }
我猜唯一的问题是每个项目只能有一个,或者必须开始命名它们。