мне нужно изменять PRODUCT поля (DropDownList) изменяются свойства и MIN MAX Картики \ Slider компонентИзменения свойств от другого поля
---- Форма ----
<?=
$form->field($model, 'product_id', [
'inputOptions' => [
'class' => 'selectpicker '
]
]
)->dropDownList(app\models\Product::getHierarchy(), ['prompt' => 'Selecione', 'class'=>'form-control required']);
?>
use kartik\slider\Slider;
echo $form->field($model, 'commission_percent')->widget(Slider::classname(), [
'name'=>'commission_percent',
'value'=>7,
'sliderColor'=>Slider::TYPE_GREY,
'handleColor'=>Slider::TYPE_SUCCESS,
'pluginOptions'=>[
'handle'=>'round',
'tooltip'=>'always',
'min'=>10,
'max'=>50,
'step'=>1,
]
]);
---- правила ----
['commission_percent', 'number','min'=>30,'max'=>40, 'when' => function($model) {
return $model->product_id == 14;
}],
EDITED
Каждый продукт имеет максимальное значение и минимальную комиссионную сумму. Я не знаю, как поймать эти значения и передать свойства max и min SLIDER.
EDITED 2
Мой контроллер actionListx возврата:
Invalid Parameter - юй \ база \ InvalidParamException содержание Ответ не должен быть массивом.
Моего _form:
<?php
$productId = Html::getInputId($model, 'product_id');
$comissionId = Html::getInputId($model, 'commission_percent');
$url = \Yii::$app->getUrlManager()->createUrl('/dailyproductivity/listx');
$js = <<<JS
$('#{$productId}').on('change', function() {
var form = $('#dailyproductivity-form');
$.ajax({
url: '{$url}',
type: 'post',
data: form.serialize(),
success: function(data) {
var min = data.min;
var max = data.max;
$("#{$comissionId}").data('slider').options.min = min;
$("#{$comissionId}").data('slider').options.max = max;
$("#{$comissionId}").slider('setValue', min);
}
});
});
JS;
$this->registerJs($js);
?>
Моего ProductivityController:
public function actionListx()
{
$model = new Dailyproductivity();
if (Yii::$app->request->isAjax && $model->load(Yii::$app->request->post())) {
Yii::$app->response->format = Response::FORMAT_JSON;
$product = Product::findOne($model->product_id);
if ($product !== null) {
return [
'min' => $product->min_value,
'max' => $product->max_value,
];
}
}
return [
'min' => '0',
'max' => '100'
];
}
печать
В чем проблема ?. –
Привет @RumesShyaman Я не знаю как. – gugoan