2016-09-21 2 views
0

Ionic 및 AngularJS 1.x를 사용하여 설문 조사 앱을 만들고 사용자가 양식을 제출할 때 정확한 데이터를 보내려고합니다.AngularJS 및 Ionic을 사용하는 라디오 버튼 선택을 취소하십시오.

질문에 라디오 버튼 (답변)이있는 경우 내 앱은 사용자가 예상 한대로 응답 할 때 답변을 '선택됨'으로 표시하지만 사용자가 다른 옵션을 클릭하면 이전 옵션이 계속 표시됩니다 "선택됨". 따라서 데이터가 제출되면 "라디오 버튼 질문"에서 여러 답변을 받게됩니다. 사용자가 라디오 버튼과 재생 2 안타 경우, 다음

<ion-radio name="{{q.question}}" 
       ng-if="q.is_simple == 1" 
       ng-repeat="a in q.answers" 
       ng-model="a.selected" 
       value="true"> 
     {{a.answer}}</ion-radio> 

을 그리고 :

Here´s my code in codepen

은 내가, 그 코드의 추출물을 here's 라디오 버튼을 잘못 설정하고 생각 두 옵션 모두 "선택됨"으로 표시됩니다.

"answers": [ 
    { 
     "id": "5", 
     "question_id": "2", 
     "answer": "Yes", 
     "selected": "true", 
    }, 
    { 
     "id": "6", 
     "question_id": "2", 
     "answer": "No", 
     "selected": "true", 
    } 

내가 알아낼 수 있도록 도와 주시겠습니까? 내가 뭘 잘못하고 있는지 잘 모르겠다. 확인란의 질문은 잘 작동하지만 라디오 버튼은 작동하지 않는 것을 볼 수 있습니다.

대단히 감사합니다. 네가 나에게 줄 수있는 도움을 주시면 감사하겠습니다.

답변

0

이는 angularjs에서 라디오 버튼이 작동하는 방식이 아닙니다.

모든 라디오 버튼에 대해 동일한 모델을 사용해야합니다. 그런 다음 값이 선택됩니다.

<ion-radio name="{{q.question}}" 
      ng-if="q.is_simple == 1" 
      ng-repeat="a in q.answers" 
      ng-model="mymodel.thisanswer" 
      ng-value="{{a.id}}"> 
    {{a.answer}} 
</ion-radio> 

편집 당신이 원하는 것을 따라이 q.selectedAnswer에 저장 될 수있다. 이렇게하면 선택한 대답으로 질문에 속성을 갖게됩니다. {{a.answer}}

+0

답장을 보내 주셔서 감사합니다. 그러나,'ng-repeat'을 사용하여 라디오 버튼을 동적으로 생성하기 때문에'ng-model'에 정확히 무엇을 넣을 지 모르겠습니다. 코덱을 살펴보고 올바른 모델을 넣으십시오. 나는 매우 감사 할 것입니다. 미리 감사드립니다 @ e666 – Gustavo

+0

편집 된 답변보기 – e666

+0

대단히 감사합니다. @ e666 왜 내가 전에 그것에 대해 생각하지 않았는지 모르겠다. 저는 AngularJS에서 새로 왔지만 더 많은 것을 매일 배울 수 있도록 열심히 노력하고 있습니다. 고마워요! – Gustavo

관련 문제