사용자 정의 스타일 의 단일 선택, 다 중 선택 단추 논리
13195 단어 자바 script단선다 선선택 문제사용자 정의 input
var answerData = {
'q1':'',
'q2':''
}
단선 문제
dom 구조:
<div class="q1">
<div class="qImg">div>//
<div class="qBody">
<div class="question"> ?div>
<div class="answer">
<div class="coin">div>
<div class="cont single" data-num="q1" data-ans="A">A. div>
div>
<div class="answer">
<div class="coin">div>
<div class="cont single" data-num="q1" data-ans="B">B. div>
div>
div>
div>
javascript:
function single(){
var node = $(this).parent().children()[0],
nextNode = $(this).parent().children()[1],
nodeNum = $(nextNode).attr('data-num'),
nodeVal = $(nextNode).attr('data-ans'),
bg = node.style.backgroundImage || 'url(coin0.png)',
// , (coin0.png: )
isChoice = bg.indexOf('coin0.png'),
other = $(this).parent().parent().children('.answer').children('.coin');
$(other).css('background-image', 'url(coin0.png)');
//
if (isChoice > 0) {
$(node).css('background-image', 'url(coin.png)');
answerData[nodeNum] = nodeVal;
} else {
$(node).css('background-image', 'url(coin0.png)');
answerData[nodeNum] = '';
}
// , ,
}
$('.single').on('click',single);
다 선 문제
dom 구조:
<div class="q2">
<div class="qImg">div>
<div class="qBody">
<div class="question"> MPV, ?( )div>
<div class="answer">
<div class="coin">div>
<div class="cont more" data-num="q2" data-ans="A">A. div>
div>
<div class="answer">
<div class="coin">div>
<div class="cont more" data-num="q2" data-ans="B">B. div>
div>
<div class="answer">
<div class="coin">div>
<div class="cont more" data-num="q2" data-ans="C">C. div>
div>
<div class="answer">
<div class="coin">div>
<div class="cont more" data-num="q2" data-ans="D">D. div>
div>
<div class="answer">
<div class="coin">div>
<div class="cont more" data-num="q2" data-ans="E">E. div>
div>
<div class="answer">
<div class="coin">div>
<div class="cont more" data-num="q2" data-ans="F">F. div>
div>
<div class="answer">
<div class="coin">div>
<div class="cont more" data-num="q2" data-ans="G">G. div>
div>
<div class="answer">
<div class="coin">div>
<div class="cont more" data-num="q2" data-ans="H">H. div>
div>
<div class="answer">
<div class="coin">div>
<div class="cont more" data-num="q2" data-ans="I">I. div>
div>
div>
div>
javascript:
function more(){
var node = $(this).parent().children()[0],
nextNode = $(this).parent().children()[1],
nodeNum = $(nextNode).attr('data-num'),
nodeVal = $(nextNode).attr('data-ans'),
bg = node.style.backgroundImage || 'url(coin0.png)',
// ,
isChoice = bg.indexOf('coin0.png'),
moreArr = answerData[nodeNum];
if (isChoice > 0) {
if (moreArr.size < 3) {
moreArr.add(nodeVal);
answerData[nodeNum] = moreArr;
$(node).css('background-image', 'url(coin.png)');
} else {
return false;
}
} else {
moreArr.delete(nodeVal);
$(node).css('background-image', 'url(coin0.png)');
}
}
$('.more').on('click',more);
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Thymeleaf 의 일반 양식 제출 과 AJAX 제출텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.