<html>
<head>
<meta http-equiv="Content-Type" content='text/html; charset=utf-8'>
</head>
<body>
<style>
html, body
{
margin: 0;
padding: 0;
}
table
{
border-collapse: collapse;
background-color: #fff;
}
table,
table td,
table th
{
border: 1px solid #333;
}
</style>
<table id="job_briefing">
<tr><th>Работник</th><th>Должность</th><th>Дата инструктажа</th><th>Инструкция</th><th>Подпись</th></tr>
</table>
<script>
(function()
{
var row_count = 30; // количество строк таблицы
var inctruct_info = '№18 от 01.07.2015'; // номер инструкции, которая будет заполнятся автоматически
// справочник работников
var workers =
[
{
name: 'Иванов И.А.',
post: 'Водитель'
},
{
name: 'Петров И.А.',
post: 'Техник'
},
{
name: 'Сидоров И.А.',
post: 'Инженер'
},
];
var job_briefing_table = document.getElementById('job_briefing'); // получаем DOM-элемент со страницы
for(var i = 0; i < row_count; i++)
job_briefing_table.appendChild(create_table_row()); // наполняем строками
// функция создания строки
function create_table_row()
{
var tr_elem = document.createElement('tr'); // создаем элемент tr
var td_elem = document.createElement('td'); // создаем элемент td
td_elem.appendChild(create_select(workers)); // создаем элемент select и вставялем его в td
tr_elem.appendChild(td_elem); // вставляем td в tr
for(var i = 0; i < 4; i++) // создаем и вставляем остальные td
{
td_elem = document.createElement('td');
tr_elem.appendChild(td_elem);
}
return tr_elem;
}
// функция создания выпадающего списка с работниками
function create_select(workers /* - список работников*/)
{
var select_elem = document.createElement('select'); // содаем элемент select
var worker_count = workers.length; // определяем кол-во работников в списке
var option_elem = document.createElement('option'); // создаем элемент option
option_elem.setAttribute('value', -1); // добавляем в option атрибут value для пустого элемента
select_elem.appendChild(option_elem); // вставляем option в select
for(var i = 0; i < worker_count; i++) // перебираем список работников
{
var worker = workers[i]; // текущий элемент списка работников
option_elem = document.createElement('option');
option_elem.setAttribute('value', i); // добавляем в option атрибут value = порядковый номер работника в списке
option_elem.innerHTML = worker.name; // имя работника в option
select_elem.appendChild(option_elem); // вставляем option в select
}
select_elem.onchange = worker_select_onchange; // добавляем обработчик события выбора элемента в выпадающем списке работников
return select_elem; // возвращаем готовый элемент выпадающего списка
}
// обработчик события выбора элемента в выпадающем списке работников
function worker_select_onchange(e)
{
var target = e.target; // получаем то элемент select, на котором произошло событие выбора работника
var select_value = target.value; // получаем выбранное value - порядковый номер работника
var tr_elem = target.parentNode.parentNode; // получаем строку, на котором располагается select (второй родительский элемент)
var td_elems = tr_elem.getElementsByTagName('td'); // получаем все ячейки этой строки
td_elems[1].innerHTML = select_value == -1 ? '' : workers[select_value].post; // задаем должность для 2-ой ячейки
td_elems[2].innerHTML = select_value == -1 ? '' : get_current_date(); // задаем текущую дату для 3-ей ячейки
td_elems[3].innerHTML = select_value == -1 ? '' : inctruct_info; // задаем сведения об инструкции для 4-ой строки
}
// функция получения текущей даты по формату DD.MM.YYYY
function get_current_date()
{
var date = new Date();
var day = date.getDate();
var month = date.getMonth() + 1;
return (day < 10 ? '0' : '') + day + '.' + (month < 10 ? '0' : '') + month + '.' + date.getFullYear();
}
})();
</script>
</body>
</html>
DELETE FROM videos WHERE id = ?
$ids = R::getAssoc('SELECT id FROM videos');
$videos = R::find( 'videos', 'id = ?', $ids );
заменить планку на 8 ГБ той же частоты
заменить планку на 16 ГБ той же частоты
заменить планку на 8 ГБ частотой выше
Обработчик селекта js который и меняет блоки с помощью display:none, display:block.
/*
Функция вкл и выкл полей формы в различных контейнерах
@param str enable_id - id-контейнера, в котором нужно вкл. поля ввода
@param arr disable_ids - массив id контейнеров, в которых нужно выкл. поля ввода
*/
function fields_enable_and_disable(enable_id, disable_ids)
{
var enable_container = document.getElementById(enable_id); // получаем контейнер, в котором нужно "включить" поля ввода
var field_types = ['input', 'select', 'textarea']; // все виды полей ввода с которыми нужно проделать манипуляцию вкл/выкл.
var count_i = field_types.length; // кол-во типов полей
for(var i = 0; i < count_i; i++) // перебираем типы полей
{
var field_type = field_types[i]; // текущий тип поля
var enable_fields = enable_container.getElementsByTagName(field_type); // получаем коллекцию полей ввода, которые нужно вкл.
var count_j = enable_fields.length; // кол-во полей текущего типа
for(var j = 0; j < count_j; j++) // перебираем поля этого типа
enable_fields[j].disabled = false; // включаем
var count_k = disable_ids.length; // кол-во контейнеров, в которых нужно выкл. поля
for(k = 0; k < count_k; k++) // перебираем неактивные контейнеры
{
var disable_id = disable_ids[k]; // id - текущего неактивного контейнера
var disable_container = document.getElementById(disable_id); // получаем неактивный контейнер
var disable_fields = disable_container.getElementsByTagName(field_type); // получаем поля текущего типа неактивного контейнера
var count_n = disable_fields.length; // кол-во этих полей по текущ. типу
for(var n = 0; l < count_n; n++)
disable_fields[n].disabled = true; // выкл. эти поля
}
}
}
let queryString = 'SELECT * FROM products';
connection.query(queryString, function (err, results) {
for (let i in items) {
let products = [{
"id":items[i].id,
"name": items[i].name,
"price": items[I].price
}];
}
link.addProducts(products);
});
$description = $item['description']
.(isset($item['category_title']) ? ', '.$item['category_title'] : '')
.(isset($item['city_name']) ? ', '.$item['city_name'] : '');
$this->setPageDescription($description);
document.getElementById('product_image_files').style.display = 'none';
for (l = 0; l < obj.length; l++)
for (var l = 0; l < obj.length; l++)
SELECT *
FROM points p
WHERE sqrt(pow(p.x - :x, 2) + pow(p.y - :y, 2)) <= :r -- используем формулу определения расстояния между двумя точками, параметры запроса, которые нужно задать :x, :y, :r.
// тут добавление пункта в меню
public void click(object sender, EventArgs e)
{
// здесь процедура по изменению textbox1.text
}
$db->prepare($query, array(PDO::ATTR_CURSOR => PDO::CURSOR_SCROLL));
$row = $result->fetch(PDO::FETCH_ASSOC, PDO::FETCH_ORI_REL, 2); // шаг = 2
$output .= '<div class="floor">';
$output .= '<div class="category">';
$output2 = ''; // тут будем копить html, необходимый для вставки после обработки списка
foreach($myPosts as $newPosts)
{
$newText = $newPosts->post_title;
$post_id = $newPosts->ID;
$permalink = get_permalink($post_id);
$thumb = get_the_post_thumbnail_url( $post_id, 'medium' );
$meta_values = get_post_meta( $post_id, 'floor', true );
$string = '';
$test = get_the_category( $post_id );
if($prev != $meta_values && $output2 == '') // какое-то условие сработало на определенном проходе списка, и его еще не обрабатывали
{
$prev = $meta_values;
$output2 .= '<span class="name">'.$string.'</span>'; // записываем вывод обработки отдельно
}
$output .= '<span class="shop" data-section="'.$meta_values.'" data-shop="'.$post_id.'" data-name="'.$newText.'" data-link="'.$permalink.'" data-newlink="'.$new_links.'" data-cat="<span>'.$name.'</span>"><span>'.$newText.'</span>';
}
$output .= '</div>';
$output = $output2.$output; // доставляем перед списком некие элементы, которые можно получить только после обработки списка.
$output .= '</div>';