从模态中检索数据而不刷新

时间:2016-11-01 12:14:44

标签: javascript jquery yii2

我有一个h4标签和一个按钮。该按钮打开一个带有GridView的模态,其动作列包含一个按钮以选择行。

我需要行按钮做的是关闭模态并填充h4标签,例如“第3行被选中”。但我不希望页面被关联。

这是父页面标签和按钮:

<h4>*</h4>

<?
echo Html::button('Explotación', [
    'value' => Url::to('/explotaciones/seleccionar'),
    'class' => 'btn btn-primary',
    'id' => 'modalButton'
]);

Modal::begin([
    'header' => 'Seleccionar Explotación',
    'id' => 'modal',
    'size' => 'modal-md'
]);
echo "<div id= 'modalContent'></div>";
Modal::end();
?>

模态中的操作列:

[
    'class' => 'yii\grid\ActionColumn',
    'template' => '{seleccionado}',
    'buttons' => [
        'seleccionado' => function ($url, $model) {
            return Html::a('<span class="glyphicon glyphicon-chevron-right"></span>', '#', [
                'id' => 'seleccionado_' . $model->exp_id,
                'class' => 'seleccionado',
                'data-fila' => $model->exp_id
            ]);
        }
    ]
]

在模式中注册javascript:

<?
$assets_js = Yii::$app->assetManager->publish(__DIR__ . '/js');

$this->registerJsFile($assets_js[1] . '/seleccion.js', [
    'depends' => [
        'app\assets\AppAsset'
    ]
]);
?>

和javascript本身:

(function($){ 
    $(document).ready(function() {

        $('.seleccionado').click(function(evento) {
            var value = 'HELLO';
            alert(value);
            value = $(this).data("fila");
            alert(value);
            $('h4').html(value);
            $('#modal').modal('hide');
        });

    });
})(jQuery); 

代码打印HELLO警报,但它不打印第二个警报,也不打印h4标签,也不关闭模态。

使这项工作的正确方法是什么?

1 个答案:

答案 0 :(得分:0)

删除缓存以便正确重新加载javascript更改就可以了。不管怎样,谢谢。