如何使用PHP在thickbox中抛出服务器端错误消息

时间:2010-05-07 09:42:59

标签: php smarty thickbox

我的简要说明:

我正在使用php验证服务器端的注册表格并且工作正常。

现在我的问题是我需要使用像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 :(得分:0)

我瞥了一眼Thinkbox的文档。您似乎必须将错误消息放在ID为

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

然后,您的脚本应提供要在 inlineId 参数中显示的div的ID:

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

答案 1 :(得分:0)

好的,我已经快速浏览了Thickbox Documentation and Examples,特别是我认为你用作创建此功能的框架的那个。

文档中没有很好地解释,但 href 中引用的“ hiddenModalContent ”实际上是指包含要显示的文本的DIV元素在弹出的Thickbox中。因此,如果您没有ID为“ 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的内容。