Pergunta

With javascript, i want my checkbox to change the text decoration of an input text field. So when it's checked, the text in the input text field turns bold.

Remember i'm learning so i'm not a pro as you guys ;)

I thought something like this;

var checkbox = create("input");
    checkbox.type = "checkbox";
    checkbox.id = "checkboxId" + counter;
    div.appendChild(checkbox);
    checkbox.onClick="boldChange(this)"

var input = create("input");
    input.type = "input";
    input.id = "inputId" + counter;
    div.appendChild(input);



function boldChange()
var boldgroup = document.getElementsByName(el.name);
for (var b=0; boldgroup[b]; ++b)
inputId.style.textDecoration = boldgroup[b].checked ? 'bold' : 'none';
}

How can i make this work? Thank you so much in advance

Foi útil?

Solução

Here is a working JSFiddle example based on your code above: Link to example

Code snippet: (place below </body> so that all of DOM is loaded)

<script>
    var div = document.getElementById('div'),
    counter = 0;

    var checkbox = document.createElement("input");
    checkbox.type = "checkbox";
    checkbox.id = "checkboxId" + counter;
    div.appendChild(checkbox);
    checkbox.onclick = boldChange;
    counter++;

    var input = document.createElement("input");
    input.type = "text";
    input.id = "inputId" + counter;
    div.appendChild(input);



    function boldChange() {
        input.style.fontWeight = (checkbox.checked)?'bold':'normal';
    }
</script>
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top