У меня такая проблема, когда открывается страница и я выбираю
select2 который построен на ajax запросах, то меня перекидывает наверх. Посмотрел в js что может повлиять, вначале я думал что это
dropdownParent
как написано
тут. Но нет, он все равно скроллится наверх к тегу body.
<?= Select2::widget([
'initValueText' => Html::encode($arrList['city']), // set the initial display text
'name' => 'Profile[city]',
'options' => ['placeholder' => 'Начните вводить '],
'value' => Html::encode($profile->city),
'language' => 'ru',
'pluginOptions' => [
'dropdownParent' => new yii\web\JsExpression('$("#personal-index")'),
'allowClear' => true,
'minimumInputLength' => 1,
'language' => [
'errorLoading' => new JsExpression("function () { return 'Поиск...'; }"),
'inputTooShort' => new JsExpression("function (args) {
var remainingChars = args.minimum - args.input.length;
var message = 'Пожалуйста, введите ' + remainingChars + ' или более символов';
return message;
}"),
'loadingMore' => new JsExpression("function () {return 'Загружаем ещё ресурсы…';}"),
'searching' => new JsExpression("function () {return 'Поиск…';}"),
'noResults' => new JsExpression("function () {return 'Ничего не найдено…';}"),
],
'ajax' => [
'url' => Url::to(['user/city-list']),
'dataType' => 'json',
'data' => new JsExpression('function(params) { return {q:params.term}; }')
],
'escapeMarkup' => new JsExpression('function (markup) { return markup; }'),
'templateResult' => new JsExpression('function(user) { return user.text; }'),
'templateSelection' => new JsExpression('function (user) { return user.text; }'),
],
]) ?>
Вот весь код