2015-05-23 4 views
-1

getElementById не работает на всех

<form id="form1"> 
 
    Title: <input type="text" id="title1" size="25"/><br/><br/><br/> 
 
    Description <input type="text" id="desc1" size="55"/><br/><br/><br/> 
 
    <input type="submit" value="Submit" onclick="doit();"/> 
 
</form> 
 

 
<script type="text/javascript"> 
 
function doit(){ 
 
    var title = document.getElementById("title1").value; 
 
    var description = document.getElementById("desc1").value; 
 

 
    document.write("<h3>Title: " + title + "</h3>"); 
 
    document.write("<h3>Description: " + description + "</h3>"); 
 
} 
 
</script>

мне нужна помощь с getElementById. Мой скрипт принимает значения, введенные пользователем в текстовые поля, и когда пользователь нажимает на отправку значений, они записываются на страницу с использованием document.write, однако код не работает так, как ожидалось.

<script type="text/javascript"> 
function doit() { 
    document.write("Do it function"); 
    var title = document.getElementById("title1").value; 
    var description = document.getElementById("desc1").value; 

    document.write("<h3>Title: " + title + "</h3>"); 
    document.write("<h3>Description: " + description + "</h3>"); 
} 
</script> 

Выполнение даже не доходит до первой линии функции. В кнопке у меня есть:

<input type="submit value="submit" onclick="doit();"/> 
+2

На вашей разметке отсутствует двойная кавычка. Это должно быть '' – techfoobar

+0

приложен код, отрезанный, и он работает здесь, но он не работает в моих браузерах !! (IE, хром ни firefox) – Abdallah

+0

Почему? связана ли безопасность? – Abdallah

ответ

1

Пожалуйста, измените HTML, как это

<input type="submit" value="submit" onclick="doit();"/> 
+1

Не просто покажите исправление, скажите **, что ** вы изменили (и почему). –

+0

Двойные кавычки отсутствуют в submit, поэтому, измените type = "submit" –

+0

спасибо, но двойные qoutes пропущены во время форматирования текста здесь, в потоке стека, это есть в моем исходном коде – Abdallah

3

Если:

<input type="submit value="submit" onclick="doit();"/> 

это действительно то, что у вас есть, вы упускаете цитаты (как следует быть очевидным по синтаксической раскраске, достаточно, чтобы убедиться, что вы используете редактор, который обеспечивает такую ​​окраску).

Это должно быть вместо этого:

<input type="submit" value="submit" onclick="doit();"/> 

Вы также должны знать, что document.write(), если этот документ уже был закрыт, будет автоматически открываться и ясно документ, поэтому ваш первый write может сделать управление с этими идентификаторами исчезают, в зависимости от структуры вашего HTML.

+0

спасибо за ответ, однако, двойной цитаты, пропущенные во время форматирования исходного кода, и она существует в моей разметке – Abdallah

Смежные вопросы