onchange для button и ...
Здравствуйте! помогите с проблемой:
задача - создать страницу средствами только javascript. вот мой код: <HTML> <HEAD> <TITLE> EXAMPLE222 </TITLE> <script type="text/javascript"> function sendms() { alert("777"); return true; } function count1() { alert("777"); } function NewFile1() { alert("777"); } function CreateForm1() { var body1 = document.getElementsByTagName("body")[0]; var div1 = document.createElement("div"); div1.id = "div1"; div1.style.position = "absolute"; div1.style.width = "30%"; div1.style.height = "90%"; div1.style['background'] = '#94e8eA'; div1.style.border = '1px solid black' //div1.style.textAlign = "center"; var p1 = document.createElement("p"); var p2 = document.createElement("p"); var p3 = document.createElement("p"); var p4 = document.createElement("p"); var p5 = document.createElement("p"); var p6 = document.createElement("p"); var p7 = document.createElement("p"); var field1 = document.createElement("input"); field1.id = "field1"; field1.type = "text"; var field2 = document.createElement("input"); field2.id = "field2"; field2.type = "text"; var field3 = document.createElement("input"); field3.id = "field3"; field3.type = "text"; var field4 = document.createElement("input"); field4.id = "field4"; field4.type = "text"; var button1 = document.createElement("input"); button1.id = "button1"; button1.type = "button"; button1.value = "Send"; button1.onchange = "return sendms()"; file1 = document.createElement("input"); file1.id = "file1"; file1.type = "file"; file1.onchange = "NewFile1()"; file2 = document.createElement("input"); file1.id = "file2"; file2.type = "file"; file2.onchange = "NewFile2()"; file2.disabled = "true"; var textarea1 = document.createElement("textarea"); textarea1.id = "textarea1"; textarea1.widht = "400px"; textarea1.height = "300px"; textarea1.overflow = "auto"; textarea1.onKeyUp="count1()"; var i1 = document.createTextNode("Name"); var i2 = document.createTextNode("E-mail"); var i3 = document.createTextNode("URL"); var i4 = document.createTextNode("File"); var i5 = document.createTextNode("Commetns"); var i6 = document.createTextNode("Max - 1000, remains - "); var i7 = document.createTextNode(" "); p1.appendChild(i1); p2.appendChild(i2); p3.appendChild(i3); p4.appendChild(i4); p5.appendChild(i5); p6.appendChild(i6); p7.appendChild(i7); body1.appendChild(div1); //vivod div1.appendChild(p1); div1.appendChild(field1); div1.appendChild(p2); div1.appendChild(field2); div1.appendChild(p3); div1.appendChild(field3); div1.appendChild(p4); div1.appendChild(file1); div1.appendChild(file2); div1.appendChild(p5); div1.appendChild(textarea1); div1.appendChild(p6,p7); div1.appendChild(field4); div1.appendChild(p7); div1.appendChild(button1); //alert("777"); } </script> <STYLE> </STYLE> </HEAD> <BODY> <script type="text/javascript"> CreateForm1(); </script> <BODY> </HTML> при решении столкнулся со следующими проблемами: 1. нужно,чтобы при выборе файла input - file, следующий объект file становился активным, затем появлялся еще 1 и так далее. Попытался сделать событие onchange, и далее изменить свойство disabled - true, но событиене работает... 2. неработает событие кнопки send - onclick 3. как вывести в через javascript несколько объектовна одной строке? |
Прочитайте об оформлении кода здесь
2. В HTML обработчик onclick элемента input ссылается на строку,а созданный элемент JavaScript должен ссылаться на объект Function. button1.onclick = sendms; 1. То же самое с файлом file1.onchange = NewFile1; Атрибут disabled элемента имеет булево значение. file2.disabled = true; file2.disabled = false; Цитата:
|
спасибо, очень помогло.
насчет пункта 3 - если написать div1.appendChild(p1); div1.appendChild(field1);, то надпись и поле выведутся еа разных строках, а мне надо на одной, или 2 поля на одной строке, то есть без <br> |
textarea1.onKeyUp = count1; так не работает... не срабатывает функция по вводу в textarea1.
почему не textarea1.onKeyUp = count1(); ? |
сравните варианты разметки:
<p>Name</p> <input type="text" > <label>Name</label><input type="text"> |
textarea1.onkeyup = count1 |
Часовой пояс GMT +3, время: 04:55. |