【问题标题】:Populate form - Smarty填充表单 - Smarty
【发布时间】:2016-02-20 17:28:17
【问题描述】:

您好,我有一个项目,其中有一个带有选择(带复选框)的搜索表单。它是用 Smarty 框架编写的。

搜索栏看起来我们有选择输入,例如选择“语言”,在展开的选择视图中我们有复选框输入(“英语”、“法语”……),我们可以选择多种语言。

点击搜索按钮后,如何使用选中的值填充表单?

表格代码:

<form action="search.php" method="get">
    <div class="language">Language</span></div>
        <div id="selectLanguage" class="selectContent">
            {foreach from=$lang key=k item=j}
                {if $k == ''}
                    <label for="all_lang"><input type="checkbox" name="lang[]" id="all_lang" value="" /> {$j}</label>
                {else}
                    <label for="{$k}"><input type="checkbox" name="lang[]" id="{$k}" value="{$k}" /> {$j}
                    </label>
                {/if}
            {/foreach}
        </div>
    </div>

脚本 JS:

$('#search-button').click(function (e) {
    e.preventDefault();

    $('#search-box form').submit();
});

【问题讨论】:

  • 与其期望用户点击按钮,为什么不正确使用.submit()函数呢?喜欢$('form').submit()

标签: javascript php forms populate


【解决方案1】:

我会使用{html_checkboxes} 函数,其中selected 属性可以是stringarray(你需要这个)。

如果不想使用自定义函数,可以使用array_search修饰符,例如

{if $lang.id|array_search:$smarty.post.lang}
    {* its checked *}
{/if}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-10-05
    • 2012-07-20
    • 2021-09-22
    • 2017-01-23
    • 2020-10-11
    • 2011-10-22
    • 2011-02-18
    • 2012-05-11
    相关资源
    最近更新 更多