2015-08-14 1 views
-1

Скажет, у меня есть <input type="checkbox" id="box1" /> и < div id="createhere"></div> и в файл JavaScript У меня есть:Как активно обновлять HTML на статусе флажка?

function(){ 
    var box=document.getElementById("box").checked; 
    var s = ""; 
    if(box){ 
     s = "<input type="text" name="text" id="text" />" 
     document.getElementById("createhere").innerHTML = s; 
    }else{ 
     s = ""; 
     document.getElementById("createhere").innerHTML = s; 
    } 
} 

Теперь это работает, но это только создает текстовое поле, когда я обновить браузер (Firefox).

Как я могу сделать то же самое без обновления браузера?

+0

's = ''' –

+0

Вы можете проверить все ответы? – ebilgin

+0

Мой код работает, я ответил на ваш вопрос первым, и он получил downvote плюс не принятый ответ. Спасибо за ваши усилия. – ebilgin

ответ

0

Этот код работает с jQuery. Я использовал jQuery, потому что у вопроса есть тег jQuery!

Вы можете попробовать это.

$("#box").on('change', function(){ 

    var check = $(this).prop("checked"); 
    var inputHTML = ""; 

    if (check) 
     inputHTML = "<input type='text' name='text' id='text' />"; 

    $("#createhere").html(inputHTML); 

}).trigger("change"); 
+0

Почему downvote? – ebilgin

+0

http://jsfiddle.net/dgLwb6aw/ вы могли видеть здесь работу. – ebilgin

+0

спасибо, да, он работает здесь мой голос +1 –

0

Используйте обработчик событий изменения

function update() { 
 
    var box = document.getElementById("box").checked; 
 
    var s = ""; 
 
    if (box) { 
 
    s = '<input type="text" name="text" id="text" />'; 
 
    } else { 
 
    s = ""; 
 
    } 
 
    document.getElementById("createhere").innerHTML = s; 
 
}
<input type="checkbox" id="box" onchange="update()" /> 
 
<div id="createhere"></div>


С JQuery

jQuery(function($) { 
 
    $('#box').change(function() { 
 
    $('#createhere').html(this.checked ? '<input type="text" name="text" id="text" />' : ''); 
 
    }).change() 
 
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<input type="checkbox" id="box" /> 
 
<div id="createhere"></div>

+0

http://jsfiddle.net/arunpjohny/nbo0sq5p/ –

+0

http://jsfiddle.net/arunpjohny/nbo0sq5p/2/ –

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