【问题标题】:joomla tooltips on form field validation关于表单字段验证的 joomla 工具提示
【发布时间】:2018-06-03 08:52:40
【问题描述】:

我有一个 Joomla 模块,其 JForm 有几个字段。我为该字段实现了客户端验证,如下所述: https://docs.joomla.org/Client-side_form_validation

当光标悬停在上方时,我还可以根据以下内容显示字段的工具提示消息: https://docs.joomla.org/J3.x:How_to_add_tooltips_to_your_Joomla!_website

但我还不知道如何仅当用户在字段中输入无效数据时才显示这些工具提示。

最好的方法是什么?

非常感谢!

【问题讨论】:

    标签: php validation joomla tooltip jform


    【解决方案1】:

    我认为最好的方法是为工具提示使用自定义类,并且只在表单验证上执行 javascript init。 例如:

    <span class="hasTipValidation" 
        title="My Tooltip Title :: Tooltip text for hasTipValidation class.">
        <input name="whatever" type="text" /></span>
    

    <script type="text/javascript">
        ....
        var f = document.adminForm;
        if (!document.formvalidator.isValid(f)) {
            var JTooltips = new Tips($$('.hasTipValidation'), 
           { maxTitleChars: 50, fixed: false});     
        }
        else { 
           ...
        };
        ...
    </script>
    

    但是 imo,这可能不是一个好主意,最好在字段之前或之后直接显示错误,而不需要用户将鼠标悬停在字段上。

    【讨论】:

    • 感谢您的建议!也许我的解释不清楚:但我想在用户输入无效数据后立即显示工具提示错误消息(即使光标没有悬停在字段上方)。这将如何改变您提出的解决方案?非常感谢!
    • 那么我认为你应该使用带有“手动”触发器的弹出框:getbootstrap.com/docs/3.3/javascript/#popovers
    • 感谢您的建议!根据 joomla 客户端验证规范:“”Joomla 将无效类分配给未通过验证测试的表单字段。无效也会添加到字段标签中。”我怎样才能捕捉到添加的无效类的这个“事件”,以便能够显示我的弹出框?谢谢!
    • 可以在表单验证失败后触发弹窗。而不是我在回复中所做的 JTooltips init,你可以这样做 $(f).find('.invalid').each(function() { // trigger popover here});
    • @wanderlusted 我还没有尝试我将要建议的内容,感觉有点 hacky,但是看看 MutationObservers:davidwalsh.name/mutationobserver-api
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-07
    • 1970-01-01
    相关资源
    最近更新 更多