我在android上测试我的代码时遇到了一个非常奇怪的问题。 能够在Android 4.4.4版本中重现此问题。(能够在每个具有套件值4.4.4的设备中重现)
我想做什么: 这是一个允许用户选择安全问题的页面。 我从JSON文件中提取问题列表。 在那个JSON对象上使用ng-repeat来获取所有问题的单选按钮。 除此之外,我们还有一个与每个问题相对应的输入按钮。 它们基本上是隐藏在用户视图之外的,我们只有在用户点击相应的单选按钮后才显示它们 休息所有输入字段都保持隐藏状态。
使用基本的ng-hide / show指令实现了这个目标
基于以下事实:只要用户点击单选按钮,就会显示相应的输入字段。
然后是ng-repeat指令范围之外的提交按钮,它只是将我们带到下一页。
现在的问题是,如果我选择第一个单选按钮并输入任何内容,然后单击提交按钮而不将焦点从输入字段中取出。 什么都没发生 。它只是将焦点从输入框中取出。在下一次单击它工作正常。 甚至更奇怪的是,功能似乎适用于最后一个无线电选项。
下面的是必需的html部分代码。
<form>
<fieldset>
<div ng-repeat="question in sortedQuestion1">
<label for="optionsRadios.{{$index}}" class="radio radio modal-form marTop20">
<input type="radio" name="optionsRadios" id="optionsRadios.{{$index}}"
value="{{question.QuestionId}}" ng-model="SeqQuestions.firstQuestionId"
ng-click="clickSet=true;SeqQuestions.securityAnswer1=''; showRadio($index)"/>
<i class="skin"></i>
<span ng-bind-html="question.QuestionText"></span>
</label>
<div class="checkbox-content hide" id="showText{{$index}}"
ng-class="{'showText{{$index}}': 'show','': 'hide'}[radioFlag]">
<div class="form-row"
<label for="{{$index}}"><span ng-bind-html="content.Security_Question.Label"/></label>
<div class="field-group">
<input id="{{$index}}" class="span3" type="text"
ng-model="SeqQuestions.securityAnswer1"
name="securityAnswer1"
ng-dirty="clickSet=false;"/>
<button class="reset-field reset hide-text" type="button"
ng-click="clickSet=true;SeqQuestions.securityAnswer1='';">Reset field
</button>
</div>
</div>
</div>
</div>
</fieldset>
</form>
</div>
<div class="content-pad">
<button class="btn " id="nextQestion" role="button" ng-init="clickSet=true"
ng-disabled="!SeqQuestions.securityAnswer1" ng-click="nextSecurityQ()"><span ng-bind-html="content.Security_Question.NextQuestion.Label"></span>
</button>
<a class="btn " role="button" ng-mousedown="cancelLink()" ng-bind-html="content.Common_Elements..Cancel.Label"></a>
</div>
</form>
$scope.nextSecurityQ = function () {
$log.info("updateSecurityQuesCtrl : inside method");
$location.url("/securityQuestion2");
};
完全没有关于为什么会发生这种情况的线索。 任何帮助都很高兴