Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Yii2 Pjax中的Yi2 Gridview数据未更改_Yii2 - Fatal编程技术网

Yii2 Pjax中的Yi2 Gridview数据未更改

Yii2 Pjax中的Yi2 Gridview数据未更改,yii2,Yii2,您好,我正在yii2中使用pjax执行搜索。我跟在后面。 上面的链接在提交这是工作良好,但我想执行滑块的变化。 index.php 解决的问题是我没有在gridview中将id分配给Pjax 我已经为_search.php分配了Pjax id。 我更改为:$.pjax.reload{url:url,容器:'gridresult'}; 到:$.pjax.reload{url:url,容器:'gridresult'} 很好,你解决了这个问题。这是另一种方法。有些人可能会觉得这很有帮助: $url =

您好,我正在yii2中使用pjax执行搜索。我跟在后面。 上面的链接在提交这是工作良好,但我想执行滑块的变化。 index.php

解决的问题是我没有在gridview中将id分配给Pjax

我已经为_search.php分配了Pjax id。 我更改为:$.pjax.reload{url:url,容器:'gridresult'};
到:$.pjax.reload{url:url,容器:'gridresult'}

很好,你解决了这个问题。这是另一种方法。有些人可能会觉得这很有帮助:

$url = \Yii::$app->getUrlManager()->createUrl('bank/index');

<?= $form->field($model, 'time')->widget(Slider::classname(), [
        'pluginOptions'=>[
            'min'=>0,
            'max'=>20,
            'step'=>1
        ],
        'pluginEvents' => [
            "slideStop" => "function() { refreshGridview($(this).val())}",
        ]
    ]);  ?>


$js1 = <<<JS
        function refreshGridview(value)
        {
            $.ajax({
                url: "$url",
                type: 'post',
                data: { "BankSearch[id]": value,  },
                success: function(response) { 
                    var csrf = yii.getCsrfToken();
                    var bank_id = value;
                    $.pjax.reload({
                        url: "$url", 
                        method: 'POST', 
                        data: { 
                                _csrf: csrf, 
                                "BankSearch[id]": value, 
                        }, 
                        container:'#bank'
                    });
                }
            });    
        }
JS;
$this->registerJs($js1);

在slidestop插件事件中,使用slider的当前值调用自定义函数,然后通过Pjax更新gridview。

你好,chinmay,我如何使用您建议的示例对多个模型执行搜索。抱歉,我不理解。对于在多个模型上的搜索,您可以使用关系。我已经完成了在多个表中的搜索。谢谢chinmay
<div class="bank-search">

<?php Pjax::begin(['id' => 'Pjax_bank_id']); ?>

<?php $form = ActiveForm::begin([
    'action' => ['index'],
    'method' => 'get',
]); ?>

<?= $form->field($model, 'id') ?>

<?= $form->field($model, 'bank_name') ?>

<?= $form->field($model, 'state') ?>

<?= $form->field($model, 'district') ?>

<?= $form->field($model, 'city') ?>

<?= 
 $form->field($model, 'time')->widget(Slider::classname(), [
'pluginOptions'=>[
'min'=>0,
'max'=>20,
'step'=>1
]
]);
?>

<?php // echo $form->field($model, 'branch') ?>

<div class="form-group">
    <?= Html::submitButton(Yii::t('app', 'Search'), ['class' => 'btn btn-primary']) ?>
    <?= Html::resetButton(Yii::t('app', 'Reset'), ['class' => 'btn btn-default']) ?>
</div>

<?php ActiveForm::end(); ?>
$('#banksearch-time').on('slideStop', function(){
alert('hello');
       var form = $(this);
        if(form.find('.has-error').length) {
            return false;
        }

        $.ajax({
            url: form.attr('action'),
            type: 'post',
            data: form.serialize(),
            success: function(response) { 
                var csrf = yii.getCsrfToken();
                var bank_name = $('#banksearch-bank_name').val();
                var state = $('#banksearch-state').val();
                var district = $('#banksearch-district').val();
                var city = $('#banksearch-city').val();
                var time = $('#banksearch-time').val();
                var url = 'index'+ '&_csrf='+csrf+'&BankSearch[bank_name]='+bank_name+'&BankSearch[state]='+state+'&BankSearch[district]='+district
                           +'&BankSearch[city]='+city +'&BankSearch[time]='+time;
                $.pjax.reload({url: url, container:'#Pjax_bank_id'});

            }
        });    
    }).on('submit', function(e){
    e.preventDefault();
});
$url = \Yii::$app->getUrlManager()->createUrl('bank/index');

<?= $form->field($model, 'time')->widget(Slider::classname(), [
        'pluginOptions'=>[
            'min'=>0,
            'max'=>20,
            'step'=>1
        ],
        'pluginEvents' => [
            "slideStop" => "function() { refreshGridview($(this).val())}",
        ]
    ]);  ?>


$js1 = <<<JS
        function refreshGridview(value)
        {
            $.ajax({
                url: "$url",
                type: 'post',
                data: { "BankSearch[id]": value,  },
                success: function(response) { 
                    var csrf = yii.getCsrfToken();
                    var bank_id = value;
                    $.pjax.reload({
                        url: "$url", 
                        method: 'POST', 
                        data: { 
                                _csrf: csrf, 
                                "BankSearch[id]": value, 
                        }, 
                        container:'#bank'
                    });
                }
            });    
        }
JS;
$this->registerJs($js1);