NumericTextBox Loses Value Using Html.TextBoxFor, Not HTML

When I use the Kendo UI Core widget with Html.TextBoxFor (for numeric textbox editing, specifically to enter a dollar amount) like so:

@Html.TextBoxFor(i => i.TotalAmount, new { @class = "currency-editor", min = "0", })

On posting back and processing the data, the value posts back as null, and thus server-side code checking done in the controller fails because nothing posts back.

When I use Raw HTML like:

<input type="text" id="@Html.IdFor(i => i.TotalAmount)" name="@Html.IdFor(i => i.TotalAmount)" value="@Model.TotalAmount"
       class="currency-editor" min="0" />

It works just fine. I don't know what the difference is? The initialization plugin (which initializes with no problems) is:

            format: "c2",
            decimals: 2,
            spinners: false

Obviously it appears something internally with the TextBoxFor plugin, maybe validation specific? MVC 5, 2015 Q3 Kendo UI Core (free version).



The issue has to do with input-validation-error and the widget being hidden - the one step I didn't put together was that this field was being validated and this added to the tag output. The trick was (as noted in Telerik's documentation):

@using (Html.BeginForm()) {
    //omitted for brevity

<script type="text/javascript">
    $(function () {

Referenced here: