New chat
30 Days
Добавление контента в модальное окно
PHP: Разбор строк с префиксами и цифрами
Форма добавления данных с AJAX
Создание базы данных SQLite с PHP
SQLite datetime timezone issue solution
Поиск и сравнение email в PHP
Проверка несоответствий order_id в SQLite3
Удаление случайной части строки в PHP
Получение значения id_corpcom при нажатии
Ошибка OpenSSL: устаревший алгоритм шифрования
2025-04
Добавление виджетов сайтов на Android
Сбор значений класса countch с jQuery
Декодирование текста письма Windows-1251 в PHP
Изменение URL в браузере без перезагрузки
2025-03
1 подключить bootstrap создать ф
2025-02
notes audio move block
php imap
code pj code notes
img docup cdn
fj
mailer
пазлов svg
gif
использовать php bootstrap datat
загрузить html блок с одного адр
dynamic sidebar html css bootstr
используя php bootstrap datatabl
fullcalendar datatable
php прибывать к формату 2025-02-
код js
2025-01
кто я
Get App
My Profile
Получение значения id_corpcom при нажатии
В коде ниже по нажатию на class linkattah_corpcom_del получить $(this) значение id="id_corpcom" этой формы ? <form method="post" action="?company" class="js-uajax-form" data-callback="myFunc" data-target="#target"> <input type="hidden" id="id_corpcom" name="id_corpcom" value="53"> <div class="row mb-2"> <div class="col"> <label for="name_corpcom" class="form-label">Организация</label> <input type="text" name="name_corpcom" id="name_corpcom" class="form-control"> </div> <div class="col-auto mt-4"> <button type="submit" class="btn btn-outline-primary mb-2">Применить <span class="spinner-border spinner-border-sm" role="status" aria-hidden="true" style="width: 1.2rem; height: 1.2rem; display: none;"></span> </button> </div> </div> <div class="row mb-2"> <div class="col"> <label for="client_corpcom" class="form-label">Контактное лицо ФИО </label> <input type="text" name="client_corpcom" id="client_corpcom" class="form-control"> </div> <div class="col"> <label for="departm_corpcom" class="form-label"> Должность</label> <input type="text" class="form-control" name="departm_corpcom" id="departm_corpcom"> </div> </div> <div class="row mb-2"> <div class="col"> <label for="email_corpcom" class="form-label">Почта</label> <select class="form-select" aria-label="Почта" name="email_corpcom" id="email_corpcom_all"><option value="one@mail.com" selected="selected">one@mail.com</option><option value="unifree@mail.com">unifree@mail.com</option><option value="vitaliy@mail.com">vitaliy@mail.com</option></select> </div> <div class="col"> <label for="phone_corpcom" class="form-label"> Телефон</label> <input type="tel" class="form-control" name="phone_corpcom" id="phone_corpcom"> </div> </div> <div class="mb-2"> <label for="address_corpcom" class="form-label">Адрес</label> <textarea name="address_corpcom" class="form-control border" id="address_corpcom" aria-describedby="titleHelp"></textarea> </div> <div class="mb-2"> <label for="details_corpcom" class="form-label">Реквизиты</label> <textarea name="details_corpcom" class="form-control border" id="details_corpcom" aria-describedby="titleHelp"></textarea> </div> <div class="mb-2"> <label for="info_corpcom" class="form-label">Доп. информация</label> <textarea name="info_corpcom" class="form-control border" id="info_corpcom" aria-describedby="titleHelp"></textarea> </div> <div class="mb-4"> <label for="files_corpcom" class="form-label">Файлы </label> <ol class="fileslist_cor list-group" style=" padding-left: 20px;"><li><a class="linkattah_corpcom" data-file="53" href="#">balluff-sensors-importozameshcheniye-v-deystvii-novaya-seriya-datchikov-tl-sv3-tip-3-otechestvennyy-analog-balluff-btl7-tz_2.png</a> <button data-file="balluff-sensors-importozameshcheniye-v-deystvii-novaya-seriya-datchikov-tl-sv3-tip-3-otechestvennyy-analog-balluff-btl7-tz_2.png" class="linkattah_corpcom_del btn btn-outline-light btn-sm"> удалить </button></li><li><a class="linkattah_corpcom" data-file="53" href="#">balluff-sensors-importozameshcheniye-v-deystvii-novaya-seriya-datchikov-tl-sv3-tip-3-otechestvennyy-analog-1.png</a> <button data-file="balluff-sensors-importozameshcheniye-v-deystvii-novaya-seriya-datchikov-tl-sv3-tip-3-otechestvennyy-analog-1.png" style=" float: right;color: red;" class="linkattah_corpcom_del btn btn-outline-light btn-sm"> удалить </button></li><li><a class="linkattah_corpcom" data-file="53" href="#">balluff-sensors-importozameshcheniye-v-deystvii-novaya-seriya-datchikov-tl-sv3-tip-3-otechestvennyy-analog-1-translate.ru.jpg</a> <button data-file="balluff-sensors-importozameshcheniye-v-deystvii-novaya-seriya-datchikov-tl-sv3-tip-3-otechestvennyy-analog-1-translate.ru.jpg" style=" float: right;color: red;" class="linkattah_corpcom_del btn btn-outline-light btn-sm"> удалить </button></li></ol> </div> <div class="mb-2"> <label for="files_corpcom" class="form-label">Прикрепить файлы</label> <input type="file" name="files_corpcom[]" id="files_corpcom" multiple="multiple"> </div> <!-- <div class="form-row"> <div class="form-group col-md-6"> <label for="inputCity">City</label> <input type="text" class="form-control" id="inputCity"> </div> <div class="form-group col-md-4"> <label for="inputState">State</label> <select id="inputState" class="form-control"> <option selected>Choose...</option> <option>...</option> </select> </div> <div class="form-group col-md-2"> <label for="inputZip">Zip</label> <input type="text" class="form-control" id="inputZip"> </div> </div> <div class="form-check mb-2"> <input class="form-check-input" name="mypost" type="checkbox" value="1" id="mypost"> <label class="form-check-label" for="mypost"> Произвольно </label> </div> <div class="mb-2 mypost"> <label for="text" class="form-label">Название</label> <input name="text" type="text" class="form-control" id="text" aria-describedby="titleHelp"> </div> <div class="mb-2 mypost"> <label for="message" class="form-label">Прикрепить медиафайлы</label> <input type="file" name="files[]" multiple="multiple" onchange="getFileSizeandName(this);"/> <div id="uploaddiv" style="display: none;"> <table id="uploadTable" class="table table-striped table-bordered" style="font-size:9px"> <tr> <th>Title</th> <th>Size</th> </tr> <tbody id="tbodyid"> <tr id="tr0"> <td id="filetd0" height="10px" width="50px"></td> <td id="filesizetd0" height="10px" width="5px"></td> </tr> </tbody> <tfoot> <tr> <td id="filecount"></td><td id="totalsize"></td> </tr> </tfoot> </table> </div> </div> --> </form>

Чтобы получить значение id="id_corpcom" из формы при нажатии на элемент с классом linkattah_corpcom_del, вы можете использовать следующий JavaScript/jQuery код:

javascript
Copy
Download
$(document).on('click', '.linkattah_corpcom_del', function() {
    // Находим ближайшую родительскую форму и в ней input с id="id_corpcom"
    var idCorpcom = $(this).closest('form').find('#id_corpcom').val();
    
    // Теперь переменная idCorpcom содержит значение "53" из вашего примера
    console.log(idCorpcom);
    
    // Дальше вы можете использовать это значение как вам нужно
    
    // Чтобы предотвратить действие по умолчанию (если нужно)
    return false;
});

Этот код:

  1. Находит ближайшую родительскую форму с помощью .closest('form')

  2. В этой форме находит элемент с id="id_corpcom" с помощью .find('#id_corpcom')

  3. Получает его значение с помощью .val()

В вашем случае это вернет "53", как указано в значении скрытого поля input.

Как проверить действия выбора #email_corpcom_all после выбора как он сделан ?

Чтобы проверить действие выбора в элементе <select id="email_corpcom_all"> (например, отследить изменение выбора или получить текущее значение), можно использовать JavaScript/jQuery.

1. Отслеживание изменения выбора (change событие)

Если нужно выполнить действие при изменении выбора:

С jQuery:

javascript
Copy
Download
$(document).ready(function() {
    $('#email_corpcom_all').on('change', function() {
        // Получаем выбранное значение
        var selectedValue = $(this).val();
        
        // Получаем текст выбранного option
        var selectedText = $(this).find('option:selected').text();
        
        console.log('Выбрано значение:', selectedValue);
        console.log('Выбран текст:', selectedText);
        
        // Можно выполнить дополнительные действия, например AJAX-запрос
        // $.ajax({ ... });
    });
});

Чистый JavaScript (без jQuery):

javascript
Copy
Download
document.addEventListener('DOMContentLoaded', function() {
    var emailSelect = document.getElementById('email_corpcom_all');
    
    emailSelect.addEventListener('change', function() {
        var selectedValue = this.value;
        var selectedText = this.options[this.selectedIndex].text;
        
        console.log('Выбрано значение:', selectedValue);
        console.log('Выбран текст:', selectedText);
    });
});

2. Проверить текущее выбранное значение (без события change)

Если нужно просто получить текущий выбор (например, при клике на кнопку):

С jQuery:

javascript
Copy
Download
$('#some-button').on('click', function() {
    var currentEmail = $('#email_corpcom_all').val();
    console.log('Текущий email:', currentEmail);
});

Чистый JavaScript:

javascript
Copy
Download
document.getElementById('some-button').addEventListener('click', function() {
    var currentEmail = document.getElementById('email_corpcom_all').value;
    console.log('Текущий email:', currentEmail);
});

3. Пример: Отправка выбранного email на сервер через AJAX

Если нужно отправить выбранный email без перезагрузки страницы:

javascript
Copy
Download
$('#email_corpcom_all').on('change', function() {
    var selectedEmail = $(this).val();
    
    $.ajax({
        url: 'update_email.php', // URL обработчика
        method: 'POST',
        data: { email: selectedEmail },
        success: function(response) {
            console.log('Сервер ответил:', response);
        },
        error: function(xhr, status, error) {
            console.error('Ошибка AJAX:', error);
        }
    });
});

Вывод

  • change событие → срабатывает при изменении выбора.

  • .val() (jQuery) / .value (JS) → получает текущее значение.

  • option:selected (jQuery) / .options[this.selectedIndex].text (JS) → получает текст выбранного пункта.

Если нужно проверить, как работает <select> на вашей странице, можно добавить console.log и посмотреть в Инструментах разработчика (F12 → Console).

Возможно в коде $('#corpcom_all, #email_corpcom_all').on('change, click', function(e) разделить действия для #corpcom_all click А для #email_corpcom_all change ?

Да, можно разделить обработчики событий для #corpcom_all (клик) и #email_corpcom_all (изменение выбора).

Способ 1: Раздельные обработчики (рекомендуется)

Просто назначьте разные события для каждого элемента:

javascript
Copy
Download
$(document).ready(function() {
    // Для #corpcom_all - обрабатываем только клик
    $('#corpcom_all').on('click', function(e) {
        e.preventDefault(); // Если это ссылка или кнопка
        console.log('Клик по corpcom_all:', $(this).val());
        // Ваш код для клика...
    });

    // Для #email_corpcom_all - обрабатываем только изменение выбора
    $('#email_corpcom_all').on('change', function() {
        console.log('Изменение email_corpcom_all:', $(this).val());
        // Ваш код для изменения select...
    });
});

Способ 2: Один обработчик с проверкой e.target.id

Если по какой-то причине нужно оставить один обработчик, можно различать элементы по id:

javascript
Copy
Download
$(document).ready(function() {
    $('#corpcom_all, #email_corpcom_all').on('change click', function(e) {
        // Определяем, какой элемент вызвал событие
        if (e.target.id === 'corpcom_all' && e.type === 'click') {
            console.log('Клик по corpcom_all:', $(this).val());
            // Действия для клика на #corpcom_all
        }
        else if (e.target.id === 'email_corpcom_all' && e.type === 'change') {
            console.log('Изменение email_corpcom_all:', $(this).val());
            // Действия для изменения #email_corpcom_all
        }
    });
});

Какой способ лучше?

  • Способ 1 (раздельные обработчики) – чище и проще для понимания.

  • Способ 2 (один обработчик) – может пригодиться, если логика очень похожа, но обычно это избыточно.

Рекомендую использовать Способ 1 – он более читаемый и поддерживаемый.

В коде html ниже как прокручивать только TEXT А ЗАГОЛОВОК оставить на месте <div class="small p-2 ms-1 mb-1 rounded-3 text-white bg-primary" style="overflow-y: auto;max-height: 50px;max-width: 1350px;"> <a href="#m789" data-msgid="789" data-idinbox="20193" data-id="87407" class="text-muted small text_subject" data-bs-toggle="modal" data-bs-target="#exampleModalScrollable">ЗАГОЛОВОК </a> <br><p> </p> <div class="kpcr__to20057 quote_0__cr">TEXT </div> </div>

Чтобы зафиксировать заголовок (<a>ЗАГОЛОВОК</a>) на месте, а прокручивать только текст (<div class="kpcr__to20057 quote_0__cr">TEXT</div>), нужно:

1. Изменить структуру HTML

Обернуть текст в отдельный блок с прокруткой, а заголовок оставить снаружи:

html
Copy
Download
Run
<div class="small p-2 ms-1 mb-1 rounded-3 text-white bg-primary" style="max-width: 1350px;">
    <!-- Заголовок (не прокручивается) -->
    <a href="#m789" data-msgid="789" data-idinbox="20193" data-id="87407" 
       class="text-muted small text_subject" 
       data-bs-toggle="modal" data-bs-target="#exampleModalScrollable">
       ЗАГОЛОВОК
    </a>
    
    <!-- Текст (прокручивается) -->
    <div style="overflow-y: auto; max-height: 50px; margin-top: 5px;">
        <div class="kpcr__to20057 quote_0__cr">TEXT</div>
    </div>
</div>

2. Альтернативный вариант (если нельзя менять HTML)

Если нельзя изменять структуру, можно использовать position: sticky для заголовка:

html
Copy
Download
Run
<div class="small p-2 ms-1 mb-1 rounded-3 text-white bg-primary" style="overflow-y: auto; max-height: 50px; max-width: 1350px; position: relative;">
    <!-- Заголовок прилипает к верху -->
    <a href="#m789" 
       style="position: sticky; top: 0; background: inherit; z-index: 1;"
       class="text-muted small text_subject" 
       data-bs-toggle="modal" data-bs-target="#exampleModalScrollable">
       ЗАГОЛОВОК
    </a>
    
    <!-- Текст прокручивается под ним -->
    <br>
    <p></p>
    <div class="kpcr__to20057 quote_0__cr">TEXT</div>
</div>

Что изменилось?

Первый вариант (рекомендуется)

  • Заголовок и текст разделены.

  • Прокручивается только блок с текстом (max-height: 50px; overflow-y: auto).

Второй вариант (если нельзя менять HTML)

  • Заголовок фиксируется вверху (position: sticky; top: 0).

  • Текст прокручивается под ним.

Выберите подходящий вариант в зависимости от возможности редактирования HTML. 🚀

Часть кода html bootstrap Как в этом блоке в class chat-list сделать не изменяемый размер 45x45 а так же от размерения экрана не изменялся размер <div class="d-flex flex-row justify-content-end" id="m850" style="overflow-y: auto;"> <div style=" margin-right: 5px;"> <div class="small p-2 ms-1 mb-1 rounded-3 text-white bg-primary" style="overflow-y: auto; max-height: 350px;max-width: 1350px;"> <a href="#m850" data-msgid="850" data-idinbox="19893" data-id="87106" class="text-muted small text_subject" data-bs-toggle="modal" data-bs-target="#exampleModalScrollable"> ЗАГОЛОВОК</a> <small style="float: right;"><i>(*внутренний комментарий)</i></small> <br><p> </p> <i class="text-muted"> текст</i> </div> <a href="#m850" data-msgid="850" data-idinbox="19893" data-id="87106" class="text-muted text-decoration-none" data-bs-toggle="modal" data-bs-target="#exampleModalScrollable"> <p class="small ms-3 rounded-3 text-muted float-end"> <img class="" src="images/email-open.svg" style=" margin-top: -5px;width: 20px;"> <img src="images/paperclip.svg" style=" margin-top: -5px;width: 20px;"> <i class="small">23 Мая, Пятница в 15:53 2025г.</i> </p> </a> <!-- <button type="button" class="btn btn-sm btn-outline-secondary"> <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-envelope-open" viewBox="0 0 16 16"> <path d="M8.47 1.318a1 1 0 0 0-.94 0l-6 3.2A1 1 0 0 0 1 5.4v.817l5.75 3.45L8 8.917l1.25.75L15 6.217V5.4a1 1 0 0 0-.53-.882zM15 7.383l-4.778 2.867L15 13.117zm-.035 6.88L8 10.082l-6.965 4.18A1 1 0 0 0 2 15h12a1 1 0 0 0 .965-.738ZM1 13.116l4.778-2.867L1 7.383v5.734ZM7.059.435a2 2 0 0 1 1.882 0l6 3.2A2 2 0 0 1 16 5.4V14a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V5.4a2 2 0 0 1 1.059-1.765z"></path></svg> <span class="visually-hidden">Открыть</span> </button> <div class="d-flex justify-content-between align-items-center mb-3 "> <div class="btn-group"> <button type="button" class="btn btn-sm btn-outline-secondary">Открыть</button> <button type="button" class="btn btn-sm btn-outline-secondary">письмо </button> </div> <small class="text-body-secondary"> </small> </div>--> </div><span data-toggle="tooltip" data-placement="top" class="rounded-circle chat-list" alt="" style="" data-bs-original-title=" Людмила">КЛ</span></div>

Чтобы сделать элемент с классом chat-list (инициалы "КЛ") фиксированного размера 45×45 пикселей, который не изменяется при масштабировании экрана, нужно:

1. Добавить стили для .chat-list

html
Copy
Download
Run
<span 
    data-toggle="tooltip" 
    data-placement="top" 
    class="rounded-circle chat-list" 
    alt="" 
    style="
        width: 45px; 
        height: 45px; 
        min-width: 45px; 
        min-height: 45px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        background: #0d6efd; /* Цвет фона (как bg-primary) */
        color: white;
        font-weight: bold;
    " 
    data-bs-original-title="Людмила"
>КЛ</span>

2. Объяснение стилей

  • width: 45px; height: 45px; – жестко фиксирует размер.

  • min-width: 45px; min-height: 45px; – предотвращает сжатие.

  • display: inline-flex; + align-items: center; justify-content: center; – центрирует текст.

  • background: #0d6efd; color: white; – стиль как у Bootstrap bg-primary text-white.

  • font-weight: bold; – делает текст жирным (если нужно).

3. Если нужно применить ко всем .chat-list

Добавьте в CSS:

css
Copy
Download
.chat-list {
    width: 45px !important;
    height: 45px !important;
    min-width: 45px !important;
    min-height: 45px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #0d6efd !important;
    color: white !important;
    font-weight: bold !important;
}

4. Итоговый блок (ваш код с фиксированным размером)

html
Copy
Download
Run
<div class="d-flex flex-row justify-content-end" id="m850" style="overflow-y: auto;">
    <div style="margin-right: 5px;">
        <div class="small p-2 ms-1 mb-1 rounded-3 text-white bg-primary" style="overflow-y: auto; max-height: 350px; max-width: 1350px;">
            <a href="#m850" data-msgid="850" data-idinbox="19893" data-id="87106" class="text-muted small text_subject" data-bs-toggle="modal" data-bs-target="#exampleModalScrollable">ЗАГОЛОВОК</a>
            <small style="float: right;"><i>(*внутренний комментарий)</i></small>
            <br>
            <p></p>
            <i class="text-muted">текст</i>
        </div>
        <a href="#m850" data-msgid="850" data-idinbox="19893" data-id="87106" class="text-muted text-decoration-none" data-bs-toggle="modal" data-bs-target="#exampleModalScrollable">
            <p class="small ms-3 rounded-3 text-muted float-end">
                <img class="" src="images/email-open.svg" style="margin-top: -5px; width: 20px;">
                <img src="images/paperclip.svg" style="margin-top: -5px; width: 20px;">
                <i class="small">23 Мая, Пятница в 15:53 2025г.</i>
            </p>
        </a>
    </div>
    <span 
        data-toggle="tooltip" 
        data-placement="top" 
        class="rounded-circle chat-list" 
        alt="" 
        style="
            width: 45px; 
            height: 45px; 
            min-width: 45px; 
            min-height: 45px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            background: #0d6efd;
            color: white;
            font-weight: bold;
        " 
        data-bs-original-title="Людмила"
    >КЛ</span>
</div>

Результат

  • Круглый элемент всегда 45×45 пикселей.

  • Не меняет размер при изменении экрана.

  • Текст "КЛ" всегда по центру.

Если нужно изменить цвет или шрифт – просто отредактируйте background и color.

New chat
DeepThink (R1)
Search
AI-generated, for reference only