2009-10-29 2 views
2

Код ниже:FBML и HTMLparser ошибка

<html xmlns="http://www.w3.org/1999/xhtml" 
     xmlns:fb="http://www.facebook.com/2008/fbml" 
     xml:lang="en" lang="en"> 
<head> 
    <title>FB Test</title> 
</head> 

<body> 
    <a href="#" onclick="FB.Connect.inviteConnectUsers();">Test</a> 
    <fb:serverfbml style="width: 350px;"> 
     <script type="text/fbml"> 
      <fb:connect-form action="http://127.0.0.1/post_invite">  
      </fb:connect-form> 
     </script> 
    </fb:serverfbml> 
</body> 
</html> 

Результаты в следующей ошибки:

- Warning: Compilation failed 
    - Warning: <class 'zope.tal.htmltalparser.NestingError'>: Open tags <html>, <body>, <fb:serverfbml>, <script> do not match close tag </fb:connect-form>, at line 16, column 4 
PTRuntimeError: ['Compilation failed', u"<class 'zope.tal.htmltalparser.NestingError'>: Open tags <html>, <body>, <fb:serverfbml>, <script> do not match close tag </fb:connect-form>, at line 16, column 4"] 

Однако структура кажется действует до меня ...

ответ

2

Вы не можете поместить теги внутри тега <script>, и строгий парсер ZPT жалуется на это. Вам нужно каким-то образом избежать содержимого, например, с помощью: content = "struct string:" construct:

<script type="text/fbml" tal:content="structure string: 
    &lt;fb:connect-form action=&quot;http://127.0.0.1/post_invite&quot;&lt;   
    &gt;/fb:connect-form&lt; 
"></script> 
0

Тег сценарий не должен Положим xml, насколько мне известно.

Вы можете приложить содержимое в комментариях xml и посмотреть, работает ли это.