JS изменялся ли элемент формы Select
Здравствуйте.
Необходимо на форме проверить изменял ли пользователь элемент формы типа Select. Как это сделать? p.s. пробовал так <select NAME="TEXT_FREQUENCY_TYPE_${row.ID}"> <option SELECTED VALUE="${row.FREQUENCY_TYPE}">${row.FREQUENCY_TYPE}</option> </select> <script> function GetValue () { var result = []; [].forEach.call(document.querySelector('form').elements, function (el) { if (['checkbox', 'radio', 'button', 'submit'].indexOf(el.type) === -1 || el.checked) { var defValue = el.defaultValue; var currvalue = el.value; if (defValue == currvalue) { result.push(el.name + ' :: ' + el.value+' :: '+" Значение не изменилось"); } else { result.push(el.name + ' :: ' + el.value+' :: '+" Значение изменилось с " + defValue + "\n на " + currvalue); } </script> результат: TEXT_FREQUENCY_TYPE_1 :: Минут :: Значение изменилось с undefined на Минут |
drno-reg,
если изначально selectedIndex=0 <!DOCTYPE html> <html> <head> <title>Untitled</title> <meta charset="utf-8"> </head> <body> <form action="http://"> <select name="" id="" onchange=""><option>1</option><option>2</option></select> <input name="text"><input name="data"> </form> <script> function GetValue () { var result = []; [].forEach.call(document.querySelector('form').elements, function (el) { if (['checkbox', 'radio', 'button', 'submit'].indexOf(el.type) === -1 || el.checked) { var defValue = el.defaultValue ; var currvalue = el.value; var index = el.selectedIndex; if (index) defValue = el.options[0].value; if (defValue == currvalue || index === 0) { result.push(el.name + ' :: ' + el.value+' :: '+" Значение не изменилось"); } else { result.push(el.name + ' :: ' + el.value+' :: '+" Значение изменилось с " + defValue + "\n на " + currvalue); } } }) alert(result) } window.setTimeout(GetValue, 5000) </script> </body> </html> |
Большое спасибо.
Именно то, что нужно. Я начинающий пользователь информационного ресурса http://javascript.ru/. Есть ли возможность отметить Ваш ответ решением вопроса? |
drno-reg,
можно только карму изменить под ником в сообщении где нужный вам код |
Часовой пояс GMT +3, время: 09:20. |