|
|
|
Синхронизация двух выпадашек.
|
|||
|---|---|---|---|
|
#18+
Добрый день, коллеги! Нужна ваша помощь. В общем есть две выпадашки, они в общем то разные, один КОНТРАКТЫ, другой ВИД ДЕЯТЕЛЬНОСТИ. Но у них некоторые значения одинаковые 'Больничный', 'Командировка', 'Отпуск', 'Отпуск без содержания', 'Социальный отпуск'. И в случае выбора одного из этих значений в одной выпадашке, нужно то же самое выбрать в другом. Вот пример моего решения. В общем виде работает нормально, но после того, как я протыкаю содержимое скажем раз 10, код начинает работать не корректно. Например при выборе 'Больничный' иногда реагирует не так как ожидаю Код: javascript 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. Уже дошел до таких извращений, с флагами изменения. Прогресса в решении проблемы нет. Помогите плиз. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2018, 11:15 |
|
||
|
Синхронизация двух выпадашек.
|
|||
|---|---|---|---|
|
#18+
vadipok, Очень странное решение с точки зрения дизайна. То, что выглядит логичным для разработчика ни разу не пахнет даже намёком на какую-то логику у обычного рядового пользователя. И похоже, что тут надо делать каскад. Либо выносить вот эти БОЛЬНИЧНЫЕ и т.п. в отдельное поле вообще, тогда и проблем не будет ни у кого. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2018, 11:17 |
|
||
|
Синхронизация двух выпадашек.
|
|||
|---|---|---|---|
|
#18+
vadipok, $(document).on("click", "#ContractID", function (e) { лучше делать в $(document).ready ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2018, 11:41 |
|
||
|
Синхронизация двух выпадашек.
|
|||
|---|---|---|---|
|
#18+
Нашел я в чем проблема. После выбора выпадашки в другой выпадашке все отрабатывает корректно. Код: html 1. Просто значение не ставит нужное. Отсюда вопрос, как заставить его отображать значение корректно согласно опции selected="selected"? Вадя, спасибо за свет, переделаю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2018, 11:54 |
|
||
|
Синхронизация двух выпадашек.
|
|||
|---|---|---|---|
|
#18+
вадяvadipok, выложи тут https://jsfiddle.net/ для демонсрации глюка https://jsfiddle.net/9nwex5mb/8/ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2018, 14:02 |
|
||
|
Синхронизация двух выпадашек.
|
|||
|---|---|---|---|
|
#18+
vadipok, надо производить идентификацию не содержимому, а по дополнительному атрибуту data- <option value="-3" data-name="xxx" >Социальный отпуск</option> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2018, 14:17 |
|
||
|
Синхронизация двух выпадашек.
|
|||
|---|---|---|---|
|
#18+
vadipok, вот тут var employmentValue = $("#EmploymentID option:selected").text().trim(); if (employmentChange == 1 && ( employmentValue == 'Больничный' || employmentValue == 'Командировка' || employmentValue == 'Отпуск' || employmentValue == 'Отпуск без содержания' || employmentValue == 'Социальный отпуск')) { ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2018, 14:19 |
|
||
|
Синхронизация двух выпадашек.
|
|||
|---|---|---|---|
|
#18+
вадяvadipok, вот тут var employmentValue = $("#EmploymentID option:selected").text().trim(); if (employmentChange == 1 && ( employmentValue == 'Больничный' || employmentValue == 'Командировка' || employmentValue == 'Отпуск' || employmentValue == 'Отпуск без содержания' || employmentValue == 'Социальный отпуск')) { Я не понимаю, имеете ввиду по value()? Если так, то не пойдет. Там для каждого отдела ID и соответственно value(), закодить все не получиться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2018, 14:34 |
|
||
|
Синхронизация двух выпадашек.
|
|||
|---|---|---|---|
|
#18+
vadipokЕсли так, то не пойдет. Там для каждого отдела ID и соответственно value(), закодить все не получиться.нет именно дополнительный атрибут ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2018, 14:42 |
|
||
|
Синхронизация двух выпадашек.
|
|||
|---|---|---|---|
|
#18+
vadipok, <option value="-3" data-name="xxx" >Социальный отпуск</option> только не надо получать и устанавливать атрибут data- с помощью jquery, это лучше делать с помощью чистого js. у jquery своё понятие атрибута data- ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2018, 14:47 |
|
||
|
Синхронизация двух выпадашек.
|
|||
|---|---|---|---|
|
#18+
vadipok, http://jquery.page2page.ru/index.php5/Заглавная_страница https://learn.javascript.ru/ https://webref.ru/css https://webref.ru/html ; надо ставить. if ($(this).attr('selected') == 'selected') правильнее заменить на if ($(this).attr('selected') === 'selected') Код: javascript 1. 2. правильнее Код: javascript 1. 2. ну и дальше ещё много чего лишнего, и непонятно что и для чего.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.02.2018, 07:19 |
|
||
|
Синхронизация двух выпадашек.
|
|||
|---|---|---|---|
|
#18+
ЗЫ .trim(); это вообще лишнее, если появилась необходимость в твоём случае это использовать - значит есть полное непонимание что и как работает, и не умение пользоваться ide. это не в обиду, а к тому что надо учиться очень много в этом направлении. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.02.2018, 07:24 |
|
||
|
Синхронизация двух выпадашек.
|
|||
|---|---|---|---|
|
#18+
вадяЗЫ .trim(); это вообще лишнее, если появилась необходимость в твоём случае это использовать - значит есть полное непонимание что и как работает, и не умение пользоваться ide. это не в обиду, а к тому что надо учиться очень много в этом направлении. Все нормально, я не обижаюсь на факты. Проблему решил, надо было использовать prop('selected', true); Код: javascript 1. 2. 3. 4. 5. 6. 7. 8. 9. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.02.2018, 13:08 |
|
||
|
|

start [/forum/topic.php?fid=22&msg=39605206&tid=1444277]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
155ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
49ms |
get tp. blocked users: |
1ms |
| others: | 238ms |
| total: | 487ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...