How to dynamically disable TextBox in MVC Razor?

asp.net-mvc, razor

Solution

This needs to be done in javascript.

@{
    object addInput = (Model.AddInput) ? null : new { disabled = "disabled" };

 }

@Html.CheckBoxFor(model=> model.AddInput)

@Html.TextBoxFor(model => model.Input.Name)


<script> 
    $('#AddInput').click(function() {
        var $this = $(this);

        if ($this.is(':checked')) {
            $('#Name').removeAttr("disabled"); 
        } else {
            $('#Name').attr("disabled", "disabled")
        }
    });
</script>

Problem

I want to dynamically disable/enable textbox aftre clicking the checkbox. How can I do it? I'm using this: ``` @{ object addInput = (Model.AddInput) ? null : new { disabled = "disabled" }; } @Html.CheckBoxFor(model=> model.AddInput) @Html.TextBoxFor(model => model.Input.Name, addInput) ``` but it works only on start. Clicking the checkbox isn't changing anything. How can do some binding to change disable state automaticaly?

Original source