RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.html [L]
Идти на стажировку за бесплатно
неплохо в html, css (сверстано порядка 20 одностраничных макетов PSD)
сейчас учу основы JS (есть пара работ: todo, calculator, математическая игра с генерацией рандомных примеров)
Как бы вы поступили на моем месте?
if ($model->validate()) {
///здесь ваш код
$model->save()
пишем данные, закрываем модалку
} else {
выводим результат валидации (рендерим аякс? или встроенная валидация?)
}
}
if ($model->load(Yii::$app->request->post()) && $model->validate()) {
///code
$model->save()
}
Вопрос: как мне в контроллере проверить, что была нажата кнопка Save в форме?
public function getFullName(string $separator = ' '): string
{
return implode($separator, array_filter([
$this->firstName,
$this->middleName,
$this->lastName
]));
}
'value'=> function($model) {
return $model->first_name .' '. $model->last_name
}
user.fullName
//или
$user->getFullName(', ')
function scrollToStep(coord = 0, step = 20, pause = 1000) {
if (coord > step) {
setTimeout(function() {
coord -= step;
window.scrollBy(0, step);
scrollToStep(coord, step, pause)
}, pause);
} else {
return false;
}
}
buttonChoice.addEventListener('click', function() {
let catalog = document.querySelector('.catalog');
scrollToStep(catalog.getBoundingClientRect().top);
});
Неужели для того, чтобы написать простенький сайт без головокружительной графики, гифок и прочей "фигни" нужно для начала:
// Вариант 1. Привязываем контекст и первые по порядку параметры
function someFunk(a, b, event) {
console.log(a, b, event);
}
element.addEventListener('click', someFunk.bind(null, 1, 2));
// Вариант 2. Используем интерфейс EventListener
function someFunk(event) {
console.log(this.a, this.b, event);
}
element.addEventListener('click', {handleEvent: someFunk, a: 1, b: 2});