误差与angularjs指令

问题描述:

,所以我需要做的是根据用户的会话误差与angularjs指令

if(!isset($_SESSION['userID'])){ 
$text = "<section> 
     <table> 
      <tr data-ng-repeat=\"msg in msgs\" 
      data-ng-click=\"function($event, ms,'lalalala')\" 
       <td>blablabla</td> 
      </tr> 
     </table> 
     </section>"; 

echo $text; 
} 

东西呼应了格上面的代码保持产生的误差与

Undefined variable: event 

这有什么错?

PHP可能正试图替换$事件

$text = "<section> 
    <table> 
     <tr data-ng-repeat=\"msg in msgs\" 
     data-ng-click=\"function(".'$event'.", ms,'lalalala')\" 
      <td>blablabla</td> 
     </tr> 
    </table> 
    </section>"; 

理想情况下你真的只想有你的模板进行客户端和API和客户端之间的明确分离。

+0

你是什么意思,先生?这不是很好的做法吗? – Foster

+0

@Foster有几个原因我说不写入服务层的视图。 1,它使调试问题变得更加复杂,而不是测试/调试API,并且独立地构建/测试您一次执行的视图。如果您决定使用其他客户端(本机iOS,Android和/或桌面应用程序)来使用数据,那么您必须解析HTML而不是易于使用的JSON响应。 3如果您决定更改服务器端代码,将影响客户端。 – shaunhusain

+0

哦,我明白了。谢谢你的解释,先生! – Foster

检查你的代码 - PHP将试图评估哪些是双引号内,你有什么看起来像一个变量中($事件

  data-ng-click=\"function($event, ms,'lalalala')\" 

使用单引号,如果你不想PHP尝试和评估字符串。见What is the difference between single-quoted and double-quoted strings in PHP?

$text = '<section> 
    <table> 
     <tr data-ng-repeat="msg in msgs" 
     data-ng-click="function($event, ms,\'lalalala\')" 
      <td>blablabla</td> 
     </tr> 
    </table> 
    </section>'; 
+0

数据-NG-点击= '功能($事件,MS,' lalalala ')'。你的意思是那个先生?它仍然没有工作 – Foster

+0

没有,那你设置变量$文本整个PHP字符串(在这种情况下,没有必要逃避里面的双引号) – copeg