在ajax请求之后重新加载页面的一部分

时间:2013-08-11 07:42:51

标签: php jquery yii

我正在尝试为我的数据列表添加搜索模块。

我发布请求的函数,呈现视图。

如何在按下搜索按钮后加载列表网格?

应该{​​{1}} echo代码,还是渲染视图并将该视图写入该位置?

我完全糊涂了......

html

2 个答案:

答案 0 :(得分:3)

我不是php开发者,但我会尝试以jQuery的方式回答。

  1. 假设您将列表网格保存在容器中:<div id="container"> //the grid </div>

  2. 您从容纳网格的View填充容器

  3. 您有 Seach TextBox
    <input id="searchBox" type="text" name="SeachTxt" Value="Some text"/>

    还有一个按钮: <input id="SearchBtn" type="button" value="Search Now!">

  4. 接下来你必须有一个jQuery ajax post函数,就像这个:

    jQuery("#SearchBtn").click(function(e) {
    e.preventDefault();
    jQuery.ajax({
        url: 'index.php?searchString=' + jQuery("#searchBox").val(),
        success: function(result) {
            jQuery("#container").html(result);
        }
    });
    

    });

答案 1 :(得分:2)

您可以使用renderPartial,例如

$this->renderPartial('_ajaxContent', array(
                        'dataProvider' => $dataProvider
                    ), false, true
);