表格显示ng-pristine即使填充值

时间:2015-12-22 06:37:00

标签: html angularjs forms

请查看以下屏幕截图:

enter image description here

以下是相应的标记:

HTML

<div class="container-fluid" ng-controller="dictController">
    <div class="row row-padding">
        <form class="form-horizontal" role="form" name="lookup-form" id="lookup-form">
            <div class="input-group col-md-6">
                <input  id="word" type="text" placeholder="Enter a Spanish or English word here..." class="form-control input-lg lookup-field lookup-field-single" onMouseOver="$(this).focus();" required>
                <i class="fa fa-times fa-lg delete-icon" onfocus="clearword();" onclick="clearword();" data-toggle="tooltip" data-placement="top" title="Click to clear entered text"></i>
              <i class="fa fa-keyboard-o fa-2x kb-icon" onfocus="toggler('virtualkeypad', this);" onclick="toggler('virtualkeypad', this);" data-toggle="tooltip" data-placement="top" title="Click to enter accented characters"></i>
                <div class="input-group-btn">
                    <button class="btn btn-lg btn-primary lookup-submit" type="submit" id="lookup" onclick="$('#word').blur(); lookup_check($('#word').val()); return(false);">Lookup</button>
                </div>
            </div>
            <div id="virtualkeypad" class="btn-group vkb-hide"><!--col-md-offset-4-->
              <button class="btn btn-lg first-btn" type="button" onClick="spl_character('á');">á</button>
              <button class="btn btn-lg" type="button" onClick="spl_character('é');">é</button>
              <button class="btn btn-lg" type="button" onClick="spl_character('í');">í</button>
              <button class="btn btn-lg" type="button" onClick="spl_character('ó');">ó</button>
              <button class="btn btn-lg" type="button" onClick="spl_character('ú');">ú</button>
              <button class="btn btn-lg" type="button" onClick="spl_character('ü');">ü</button>
              <button class="btn btn-lg last-btn" type="button" onClick="spl_character('ñ');">ñ</button>
            </div>
        </form>
</div>

代码工作得非常好,我对其任何方面都没有任何问题。但是,我注意到有问题的表单已被Angular类ng-pristine标记,即使输入框有值( book )。不应该是ng-dirty而是{{1}}吗?此外,输入框本身似乎没有任何Angular标记。我只是对可能导致这种情况的原因感到好奇。

1 个答案:

答案 0 :(得分:1)

Angular的神奇之处在于它会自动将DOM元素绑定到数据模型中的变量。在这种情况下,如果您为ng-model中的变量添加$scope绑定,则此操作应该符合您的预期。

这就是角度“知道”你的表格是脏的还是原始的。