Как бросить сообщение об ошибке на стороне сервера в Thickbox с помощью PHP - PullRequest
0 голосов
/ 07 мая 2010

Вкратце моя проблема:

Я проверяю регистрационную форму на стороне сервера, используя php и она работает нормально.

Теперь моя проблема заключается в том, что мне нужно показать сообщение об ошибке с использованием Thickbox, напримерpopup.

Возможно ли это.Если да, пожалуйста, объясните, как?

заранее спасибо

Код:

<script type="text/javascript" src="thickbox/jquery-latest.js"></script>
<script type="text/javascript" src="thickbox/thickbox.js"></script>
<link href="thickbox/thickbox.css" rel="stylesheet" type="text/css" />



<span class="prtexterror" style="color:#FF0000;display:none;" id="hiddenModalContent" >{$error_login}</span>


{literal}
<script language="javascript" type="text/javascript">



  $(document).ready(function() {
    tb_show("Please, login", "?tb_inline=true&inlineId=hiddenModalContent&height=180&width=300&modal=true", null);
});



</script>
{/literal}

Ответы [ 2 ]

0 голосов
/ 07 мая 2010

Хорошо, я быстро ознакомился с документацией и примерами Thickbox , особенно той, которую, я полагаю, вы используете в качестве основы для создания этой функциональности.

Это не очень хорошо объяснено в документации, но " hiddenModalContent ", на который ссылается href , на самом деле относится к элементу DIV, который содержит текст, который будет отображаться в Thickbox который всплывает. Поэтому, если у вас нет элемента с идентификатором « hiddenModalContent », это объясняет, почему вы получаете пустое всплывающее окно.

Решение? Заменить:

<a href="#TB_inline?height=240&amp;width=405&amp;inlineId=hiddenModalContent&amp;modal=true" class="thickbox">{$errorMessage}</a>

С:

<div id="hiddenModalContent" style="display:none;">{$errorMessage}</div>

Затем при выполнении $(document).ready(... содержимое этого DIV будет использоваться в качестве содержимого Thickbox.

0 голосов
/ 07 мая 2010

Я взглянул на документацию Thinkbox. Похоже, вы должны поместить сообщение об ошибке в div с идентификатором:

<div id="errorMessage">
{$errorMessage}
</div>

Затем ваш скрипт должен предоставить идентификатор div, который будет показан в параметре inlineId :

tb_show("HAI","#TB_inline? height=240&amp;width=405&amp;inlineId=errorMessage&amp;modal=true",null);
...