2013-09-06 3 views
0

Итак, я работаю с JSF 2.0, и я создал JavaScript, который выглядит следующим образом:Javascript визуализируется неправильно

  <script type="text/javascript"> 
        function generate(){ 
         if(!licenseServerInfo){ 
          NI.pnx.messaging.popMessage(NI.pnx.messaging.messageTypes.warning,['<strong>Your changes to License Server Name and Computer ID have not been saved.</strong><a href="" class="right"><strong>Undo Change</strong></a>'],NI.pnx.messaging.messageTimeoutSpeeds.never); 
         }else{ 
          generateLicenseFile(); 
          document.getElementById('upperButtons:generateCall').click(); 
         } 
        }     
      </script> 

Но это оказывается так:

<script type="text/javascript"><!-- 

        function generate(){ 
         if(!licenseServerInfo){ 
          NI.pnx.messaging.popMessage(NI.pnx.messaging.messageTypes.warning,['<strong>Your changes to License Server Name and Computer ID have not been saved. 
//--></strong><a class="right"><strong>Undo Change<!-- 

        function generate(){ 
         if(!licenseServerInfo){ 
          NI.pnx.messaging.popMessage(NI.pnx.messaging.messageTypes.warning,['<strong>Your changes to License Server Name and Computer ID have not been saved. 
//--></strong><!-- 

        function generate(){ 
         if(!licenseServerInfo){ 
          NI.pnx.messaging.popMessage(NI.pnx.messaging.messageTypes.warning,['<strong>Your changes to License Server Name and Computer ID have not been saved. 
//--></a>'],NI.pnx.messaging.messageTimeoutSpeeds.never); 
         }else{ 
          generateLicenseFile(); 
          document.getElementById('upperButtons:generateCall').click(); 
         } 
        } 

       <!-- 

        function generate(){ 
         if(!licenseServerInfo){ 
          NI.pnx.messaging.popMessage(NI.pnx.messaging.messageTypes.warning,['<strong>Your changes to License Server Name and Computer ID have not been saved. 
//--></script> 

Использование хром, если я вызываю каждую из содержащихся функций, все они работают правильно. Но если я попытаюсь вызвать generate(), он говорит, что его не существует.

Любые идеи?

+0

, с одной стороны, похоже, что вы генерируете этот код внутри цикла (поэтому функция записывается несколько раз) , с другой стороны, вы могли бы попробовать установить свой скрипт внутри , чтобы избежать использования браузера, пытаясь его разобрать. – OscarG

+0

CDATA сделал это. Не стесняйтесь оставить это в качестве ответа, чтобы отметить его как принятое. Благодаря!!! – Nacho321

+1

Я рад, что это помогло;) – OscarG

ответ

1

С одной стороны, похоже, что вы генерируете этот код внутри цикла (поэтому функция записывается несколько раз). С другой стороны, вы можете попробовать настроить свой скрипт внутри <![CDATA[ ]]>, чтобы избежать браузера, пытающегося его разбора

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