我在表单中有几个输入元素。因此,当用户键入其中一个输入元素时,其他输入应该消失,并根据用户键入的内容(AJAX)向用户提供一些建议。如果用户选择其中一个建议,则所选值将存储到数据库中,现在隐藏的输入元素应该显示回来。到目前为止这部分是可行的。但是,当焦点输入元素失去焦点时,我似乎无法弄清楚如何使隐藏的输入可见。基本上,如果用户离开输入元素而没有选择提供的建议之一,代码应该重置所有内容(恢复隐藏元素并重置建议)。在正常情况下,这可以通过ng-blur来实现:
<input type="text" ng-model="lastName"
ng-blur="lastName=''; focused=false; resetData();"
ng-focus='focused=true;'
ng-keyup = 'ajaxCall(lastName)'
ng-click=''
ng-change=''><br>
但这在我的情况下不起作用,因为在用户选择其中一个建议之前,通过ng-blur重置ajaxdata。我最初认为这不是具有挑战性的案例,但由于某种原因,我无法弄清楚如何实现这一目标。这是我到目前为止的代码: http://plnkr.co/edit/OAiCgSIpb2dKLLWH0jfF?p=preview
任何评论表示赞赏!