首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用AJAX表单的Nette组件

使用AJAX表单的Nette组件
EN

Stack Overflow用户
提问于 2016-03-10 07:14:32
回答 1查看 579关注 0票数 1

我制作像DataGrid这样的nette组件。我有一个基本组件BaseGrid。在这个组件中,我调用了另一个组件过滤器

代码语言:javascript
复制
    public function createComponentFilter()
        {
            return new Multiplier(function ($columnName) {
                return new \App\Filter\FilterControl($columnName, $this->session, $this->database);
            });
        }

其中$columnName是列名(多么出乎意料)

组件过滤器的构造函数

代码语言:javascript
复制
    public function __construct($column_name, Session $session, $database)
    {
        $this->session = $session;
        $this->sessionSection = $this->session->getSection('filtr');
        $this->column_name = $column_name;
        $this->database = $database;
    }

在组件过滤器中,我有ajax表单,在发送这个ajaxform之后,我需要将字符串从表单传递到组件数据网格的呈现方法。

当然,我尝试使用redrawControl进行会话。但是什么也没发生。有什么可能的解决方案吗?比如session,执着的助手,神奇的彩虹独角兽,或者更好的带西红柿披萨的毛绒绒的小猫。

谢谢你的点子。

EN

回答 1

Stack Overflow用户

发布于 2016-03-10 17:48:48

我不太确定你在找什么,但是..

它可以是动态片段

https://doc.nette.org/en/2.3/ajax#toc-dynamic-snippets

代码语言:javascript
复制
{snippet items}
    {foreach $items as $item}
        {snippet "items-" . $item->id}
            {$item->str}
        {/snippet}
    {/foreach}
{/snippet}    

你只能重画一项,e.q。

代码语言:javascript
复制
$this->redrawControl("item-$id");

如果这对你没有帮助的话。请提供更多的代码,特别是拿铁模板。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35904564

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档