스크립트 내부에 여분필드 불러오기?

매출이 오르면 내리는 수수료! 지금 수수료센터에서 전자결제(PG)수수료 비교견적 신청해 보세요!
스크립트 내부에 여분필드 불러오기?

QA

스크립트 내부에 여분필드 불러오기?

본문

오전에 우연찮게 발견한 퀴즈 소스 덕분에

하루종일 보드 스킨과 씨름하고 있습니다ㅋㅋ

이제 80% 정도 되어 가는데 마지막 부분.....

에서 막혀 버렸습니다....



var map = {};
  var ax = ['0','red','mercedes','3.14','3'];
  var answer = '';
  var total = 0;
  var ttl = 0;

퀴즈의 정답부분을 불러 오는 스크립트 입니다.

이곳에


 var ax = ['0','red','mercedes','3.14','3'];
이 부분에 정답을 입력하고 연동이 되는 방식입니다.

저는 여분필드 9번(wr_9) 를 이용하여
view 페이지에서 이 스크립트를 불러 올오려 합니다.

그래서 무작정


var ax = ['0','<php echo $view['wr_9']>','mercedes','3.14','3'];

이렇게 적용을 하였 습니다.
무었이 문제인지... 먹통이 되어 버렸습니다....

혹시 스크립트(파일명.js) 내부에서 여분필드 호출 방법을 아시는 분
도움을 부탁 드립니다.


이 질문에 댓글 쓰기 :

답변 5

// 스크립트.js 
var ax = ['0','red','mercedes','3.14','3'];  
=>
// var ax = ['0','red','mercedes','3.14','3']; // 주석처리 

// view.skin.php
<script>
var ax = ['0','<?php echo $view['wr_9'] ?>','mercedes','3.14','3'];
</script>
<script src="스크립트.js"></script>

알려 주신 방법으로 적용 결과 드디어 인식을 합니다^.^
그런데 산너머 산이 있네요.....

최종 정답 결과 부분에서..... 무조건 오답으로 표기가 되고있습니다...
제 예상으로는 이쯤 인거 같은데...


 jQuery('.mm-survey-results-container .mm-survey-results-list').html('');
  for (i = 1; i <= count; i++) {
   var t = {};
   var m = {};
   answer += map[i] + '<br>';
   
   if( map[i] === ax[i]) {
    g = map[i];
    p = 'correct';
    c = 1;
   }
   else {
    g = map[i];
    p = 'incorrect';
    c = 0;
   }


여분필드 wr_9 값


<script src="스크립트.js"></script>

<script>

 var ax = ['0','<?php echo $view['wr_9'] ?>','mercedes','3.14','3'];

</script>





 <div class="mm-survey-item">
         <input type="radio" id="radio01" data-item="1" name="radio1" value="red" />
         <label for="radio01"><span></span><p>Red</p></label>
        </div>
        <div class="mm-survey-item">
         <input type="radio" id="radio02" data-item="1" name="radio1" value="blue" />
         <label for="radio02"><span></span><p>Blue</p></label>
        </div>
        <div class="mm-survey-item">
         <input type="radio" id="radio03" data-item="1" name="radio1" value="green" />
         <label for="radio03"><span></span><p>Green</p></label>
        </div>
        <div class="mm-survey-item">
         <input type="radio" id="radio04" data-item="1" name="radio1" value="purple" />
         <label for="radio04"><span></span><p>Purple</p></label>
        </div>



view 파일에 있는
 value 값을  서로 비교하여 결과를 보여 주는거 같은데... 음....

글쓰기 페이지 에서
 wr_9 값을 red 로 입력하면 이게 정답으로 나와야 하는데... 무조건 오답으로 나와 보리네요.,...

진짜 산너머 산이네요.....

(참고로  value 값은 차후에 O X 값으로 고정 해서 하려구요~)

먹통은 문법오류때문입니다.

아래처럼..

<?php echo $view['wr_9']?>

소스 전체 내용 입니다......

-출처-

https://codepen.io/DVELOPR/pen/dpRqKg



<div class="container">
  <div class="col-sm-12">
   <div class="mm-survey">
    <div class="mm-survey-progress">
     <div class="mm-survey-progress-bar mm-progress"></div>
    </div>
    <div class="mm-survey-results">
     <div class="mm-survey-results-container">
      <h3 class="mm-survey-results-score"></h3>
      <ul class="mm-survey-results-list"></ul>
     </div>
     <div class="mm-survey-results-controller">
      <div class="mm-back-btn">
       <button>Back</button>
      </div>
     </div>
    </div>
    <div class="mm-survey-bottom">
     <div class="mm-survey-container">
      <div class="mm-survey-page active" data-page="1">
       <div class="mm-survery-content">
        <div class="mm-survey-question">
         <p>Based on history... What is the ideal color for a Ferrari?</p>
        </div>
        <div class="mm-survey-item">
         <input type="radio" id="radio01" data-item="1" name="radio1" value="red" />
         <label for="radio01"><span></span><p>Red</p></label>
        </div>
        <div class="mm-survey-item">
         <input type="radio" id="radio02" data-item="1" name="radio1" value="blue" />
         <label for="radio02"><span></span><p>Blue</p></label>
        </div>
        <div class="mm-survey-item">
         <input type="radio" id="radio03" data-item="1" name="radio1" value="green" />
         <label for="radio03"><span></span><p>Green</p></label>
        </div>
        <div class="mm-survey-item">
         <input type="radio" id="radio04" data-item="1" name="radio1" value="purple" />
         <label for="radio04"><span></span><p>Purple</p></label>
        </div>
       </div>
      </div>
      <div class="mm-survey-page" data-page="2">
       <div class="mm-survery-content">
        <div class="mm-survey-question">
         <p>Which one of these car brands is made in Germany?</p>
        </div>
        <div class="mm-survey-item">
         <input type="radio" id="radio05" data-item="2" name="radio2" value="honda" />
         <label for="radio05"><span></span><p>Honda</p></label>
        </div>
        <div class="mm-survey-item">
         <input type="radio" id="radio06" data-item="2" name="radio2" value="ford" />
         <label for="radio06"><span></span><p>Ford</p></label>
        </div>
        <div class="mm-survey-item">
         <input type="radio" id="radio07" data-item="2" name="radio2" value="mercedes" />
         <label for="radio07"><span></span><p>Mercedes</p></label>
        </div>
        <div class="mm-survey-item">
         <input type="radio" id="radio08" data-item="2" name="radio2" value="ferrari" />
         <label for="radio08"><span></span><p>Ferrari</p></label>
        </div>
       </div>
      </div>
      <div class="mm-survey-page" data-page="3">
       <div class="mm-survery-content">
        <div class="mm-survey-question">
         <p>Which is the correct integer for Pi?</p>
        </div>
        <div class="mm-survey-item">
         <input type="radio" id="radio09" data-item="3" name="radio3" value="3" />
         <label for="radio09"><span></span><p>3</p></label>
        </div>
        <div class="mm-survey-item">
         <input type="radio" id="radio10" data-item="3" name="radio3" value="4" />
         <label for="radio10"><span></span><p>4</p></label>
        </div>
        <div class="mm-survey-item">
         <input type="radio" id="radio11" data-item="3" name="radio3" value="3.41" />
         <label for="radio11"><span></span><p>3.41</p></label>
        </div>
        <div class="mm-survey-item">
         <input type="radio" id="radio12" data-item="3" name="radio3" value="3.14" />
         <label for="radio12"><span></span><p>3.14</p></label>
        </div>
       </div>
      </div>
      <div class="mm-survey-page" data-page="4">
       <div class="mm-survery-content">
        <div class="mm-survey-question">
         <p>The letter 'C' is the nth number in the alphabet, choose the correct number.</p>
        </div>
        <div class="mm-survey-item">
         <input type="radio" id="radio13" data-item="4" name="radio4" value="1" />
         <label for="radio13"><span></span><p>1</p></label>
        </div>
        <div class="mm-survey-item">
         <input type="radio" id="radio14" data-item="4" name="radio4" value="2" />
         <label for="radio14"><span></span><p>2</p></label>
        </div>
        <div class="mm-survey-item">
         <input type="radio" id="radio15" data-item="4" name="radio4" value="3" />
         <label for="radio15"><span></span><p>3</p></label>
        </div>
        <div class="mm-survey-item">
         <input type="radio" id="radio16" data-item="4" name="radio4" value="4" />
         <label for="radio16"><span></span><p>4</p></label>
        </div>
       </div>
      </div>
      <!-- <div class="mm-survey-page" data-page="5">
       <div class="mm-survery-content">
       </div>
      </div>
      <div class="mm-survey-page" data-page="6">
       <div class="mm-survery-content">
       </div>
      </div>
      <div class="mm-survey-page" data-page="7">
       <div class="mm-survery-content">
       </div>
      </div> -->
     </div>
     <div class="mm-survey-controller">
      <div class="mm-prev-btn">
       <button>Prev</button>
      </div>
      <div class="mm-next-btn">
       <button disabled="true">Next</button>
      </div>
      <div class="mm-finish-btn">
       <button>Submit</button>
      </div>
     </div>
    </div>
   </div>
  </div>
 </div>



.mm-survey {
 margin-top: 75px;
 margin-bottom: 50px;
}
.mm-survey-container {
 width: 100%;
 min-height: 600px;
 background: #fafafa;
}
.mm-survey-results-container {
 width: 100%;
 min-height: 600px;
 background: #fafafa;
}
.mm-survey-page {
 display: none;
 font-family: 'Raleway';
 font-weight: 100;
 padding: 40px;
}
.mm-survey-page.active {
 display: block;
}
.mm-survey-controller {
 position: relative;
    height: 60px;
    background: #333;
    padding: 12px 14px;
}
.mm-survey-results-controller {
 position: relative;
    height: 60px;
    background: #333;
    padding: 12px 14px;
}
.mm-back-btn {
 display: inline-block;
    position: relative;
    float: left;
}
.mm-prev-btn {
 display: inline-block;
    position: relative;
    float: left;
}
.mm-next-btn {
 display: inline-block;
 opacity: 0.25;
    position: relative;
    float: right;
}
.mm-finish-btn {
 display: none;
    position: relative;
    float: right;
}
.mm-finish-btn button {
 background: #3DD2AF !important;
    color: #fff;
}
.mm-survey-controller button {
 background: #fff;
    border: none;
    padding: 8px 18px;
    font-family: 'Raleway';
    font-weight: 300;
}
.mm-survey-results-controller button {
 background: #fff;
 border: none;
 padding: 8px 18px;
}
.mm-survey-progress {
 width: 100%;
 height: 30px;
 background: #f5f5f5;
 overflow: hidden;
}
.mm-progress {
 transition: width 0.5s ease-in-out;
}
.mm-survey-progress-bar {
 height: 30px;
    width: 0%;
    background: linear-gradient(to left, #4CB8C4, #3CD3AD);
}
.mm-survey-q {
 list-style-type: none;
 padding: 0px;
}
.mm-survey-q li {
 display: block;
 /*padding: 20px 0px;*/
 margin-bottom: 10px;
 width: 100%;
 background: #fff;
}
.mm-survey-q li input {
 width: 100%;
}
.mm-survery-content label {
 width: 100%;
 padding: 10px 10px;
 margin: 0px !important;
}
.mm-survery-content label:hover {
 cursor: pointer;
}
.mm-survey-question {
 min-height: 100px;
}
.mm-survey-question p {
 font-size: 22px;
    font-weight: 200;
    margin-bottom: 20px;
    line-height: 40px;
}
.mm-survery-content label p {
 display: inline-block;
    position: relative;
    top: 2px;
    left: 5px;
    margin: 0px;
}
input[type="radio"] {
 display: none;
}
input[type="radio"] + label {
 color: #292321;
    font-family: 'Raleway';
    font-weight: 300;
    font-size: 16px;
}
input[type="radio"] + label span {
 display: inline-block;
 width: 30px;
 height: 30px;
 margin: 2px 4px 0 0;
 vertical-align: middle;
 cursor: pointer;
 -moz-border-radius: 50%;
 border-radius: 50%;
}
input[type="radio"] + label span {
  background-color: #333;
}
input[type="radio"]:checked + label span {
 border: 2px solid #3DD2AF;
 background: transparent;
}
input[type="radio"] + label span,
input[type="radio"]:checked + label span {
 -webkit-transition: background-color 0.20s ease-in-out;
 -o-transition: background-color 0.20s ease-in-out;
 -moz-transition: background-color 0.20s ease-in-out;
 transition: background-color 0.20s ease-in-out;
}
.mm-survey-item {
 background: #fff;
 margin-bottom: 15px;
 border-bottom: 1px solid rgba(33,33,33,0.15);
    border-radius: 0px 0px 4px 4px;
}
.mm-prev-btn button:focus, .mm-next-btn button:focus, .mm-finish-btn button:focus {
 outline: none;
 border: none;
}
.mm-survey.okay .mm-next-btn {
 display: inline-block;
 opacity: 1;
}
.mm-finish-btn.active {
 display: inline-block;
}
.mm-survey-results {
 display: none;
}
.mm-survey-results-score {
 margin: 0px;
    padding: 0px;
    padding-top: 40px;
    padding-bottom: 40px;
    text-align: center;
    font-size: 80px;
    font-family: 'Raleway';
    font-weight: 600;
    letter-spacing: -6px;
}
.mm-survey-results-list {
 list-style-type: none;
 padding: 0px 15px;
    margin: 0px;
}
.mm-survey-results-item {
 color: #fff;
    margin-top: 10px;
    padding: 15px 15px 15px 0px;
    font-family: 'Raleway';
    font-weight: 300;
}
.mm-survey-results-item.correct {
 background: linear-gradient(to left, #4CB8C4, #3CD3AD);
}
.mm-survey-results-item.incorrect {
 background: linear-gradient(to left, #d33c62, #dc1144);
}
.mm-item-number {
 height: 40px;
 position: relative;
 padding: 17px;
 background: #333;
 color: #fff;
}
.mm-item-info {
 float: right;
}



jQuery('.mm-prev-btn').hide();
 var x;
 var count;
 var current;
 var percent;
 var z = [];
 init();
 getCurrentSlide();
 goToNext();
 goToPrev();
 getCount();
 // checkStatus();
 // buttonConfig();
 buildStatus();
 deliverStatus();
 submitData();
 goBack();
 function init() {
  
  jQuery('.mm-survey-container .mm-survey-page').each(function() {
   var item;
   var page;
   item = jQuery(this);
   page = item.data('page');
   item.addClass('mm-page-'+page);
   //item.html(page);
  });
 }
 function getCount() {
  count = jQuery('.mm-survey-page').length;
  return count;
 }
 function goToNext() {
  jQuery('.mm-next-btn').on('click', function() {
   goToSlide(x);
   getCount();
   current = x + 1;
   var g = current/count;
   buildProgress(g);
   var y = (count + 1);
   getButtons();
   jQuery('.mm-survey-page').removeClass('active');
   jQuery('.mm-page-'+current).addClass('active');
   getCurrentSlide();
   checkStatus();
   if( jQuery('.mm-page-'+count).hasClass('active') ){
    if( jQuery('.mm-page-'+count).hasClass('pass') ) {
     jQuery('.mm-finish-btn').addClass('active');
    }
    else {
     jQuery('.mm-page-'+count+' .mm-survery-content .mm-survey-item').on('click', function() {
      jQuery('.mm-finish-btn').addClass('active');
     });
    }
   }
   else {
    jQuery('.mm-finish-btn').removeClass('active');
    if( jQuery('.mm-page-'+current).hasClass('pass') ) {
     jQuery('.mm-survey-container').addClass('good');
     jQuery('.mm-survey').addClass('okay');
    }
    else {
     jQuery('.mm-survey-container').removeClass('good');
     jQuery('.mm-survey').removeClass('okay');
    }
   }
   buttonConfig();
  });
 }
 function goToPrev() {
  jQuery('.mm-prev-btn').on('click', function() {
   goToSlide(x);
   getCount();   
   current = (x - 1);
   var g = current/count;
   buildProgress(g);
   var y = count;
   getButtons();
   jQuery('.mm-survey-page').removeClass('active');
   jQuery('.mm-page-'+current).addClass('active');
   getCurrentSlide();
   checkStatus();
   jQuery('.mm-finish-btn').removeClass('active');
   if( jQuery('.mm-page-'+current).hasClass('pass') ) {
    jQuery('.mm-survey-container').addClass('good');
    jQuery('.mm-survey').addClass('okay');
   }
   else {
    jQuery('.mm-survey-container').removeClass('good');
    jQuery('.mm-survey').removeClass('okay');
   }
   buttonConfig();
  });
 }
 function buildProgress(g) {
  if(g > 1){
   g = g - 1;
  }
  else if (g === 0) {
   g = 1;
  }
  g = g * 100;
  jQuery('.mm-survey-progress-bar').css({ 'width' : g+'%' });
 }
 function goToSlide(x) {
  return x;
 }
 function getCurrentSlide() {
  jQuery('.mm-survey-page').each(function() {
   var item;
   item = jQuery(this);
   if( jQuery(item).hasClass('active') ) {
    x = item.data('page');
   }
   else {
    
   }
   return x;
  });
 }
 function getButtons() {
  if(current === 0) {
   current = y;
  }
  if(current === count) {
   jQuery('.mm-next-btn').hide();
  }
  else if(current === 1) {
   jQuery('.mm-prev-btn').hide();
  }
  else {
   jQuery('.mm-next-btn').show();
   jQuery('.mm-prev-btn').show();
  }
 }
 jQuery('.mm-survey-q li input').each(function() {
  var item;
  item = jQuery(this);
  jQuery(item).on('click', function() {
   if( jQuery('input:checked').length > 0 ) {
       // console.log(item.val());
       jQuery('label').parent().removeClass('active');
       item.closest( 'li' ).addClass('active');
   }
   else {
    //
   }
  });
 });
 percent = (x/count) * 100;
 jQuery('.mm-survey-progress-bar').css({ 'width' : percent+'%' });
 function checkStatus() {
  jQuery('.mm-survery-content .mm-survey-item').on('click', function() {
   var item;
   item = jQuery(this);
   item.closest('.mm-survey-page').addClass('pass');
  });
 }
 function buildStatus() {
  jQuery('.mm-survery-content .mm-survey-item').on('click', function() {
   var item;
   item = jQuery(this);
   item.addClass('bingo');
   item.closest('.mm-survey-page').addClass('pass');
   jQuery('.mm-survey-container').addClass('good');
  });
 }
 function deliverStatus() {
  jQuery('.mm-survey-item').on('click', function() {
   if( jQuery('.mm-survey-container').hasClass('good') ){
    jQuery('.mm-survey').addClass('okay');
   }
   else {
    jQuery('.mm-survey').removeClass('okay'); 
   }
   buttonConfig();
  });
 }
 function lastPage() {
  if( jQuery('.mm-next-btn').hasClass('cool') ) {
   alert('cool');
  }
 }
 function buttonConfig() {
  if( jQuery('.mm-survey').hasClass('okay') ) {
   jQuery('.mm-next-btn button').prop('disabled', false);
  }
  else {
   jQuery('.mm-next-btn button').prop('disabled', true);
  }
 }
 function submitData() {
  jQuery('.mm-finish-btn').on('click', function() {
   collectData();
   jQuery('.mm-survey-bottom').slideUp();
   jQuery('.mm-survey-results').slideDown();
  });
 }
 function collectData() {
  
  var map = {};
  var ax = ['0','red','mercedes','3.14','3'];
  var answer = '';
  var total = 0;
  var ttl = 0;
  var g;
  var c = 0;
  jQuery('.mm-survey-item input:checked').each(function(index, val) {
   var item;
   var data;
   var name;
   var n;
   item = jQuery(this);
   data = item.val();
   name = item.data('item');
   n = parseInt(data);
   total += n;
   map[name] = data;
  });
  jQuery('.mm-survey-results-container .mm-survey-results-list').html('');
  for (i = 1; i <= count; i++) {
   var t = {};
   var m = {};
   answer += map[i] + '<br>';
   
   if( map[i] === ax[i]) {
    g = map[i];
    p = 'correct';
    c = 1;
   }
   else {
    g = map[i];
    p = 'incorrect';
    c = 0;
   }
   jQuery('.mm-survey-results-list').append('<li class="mm-survey-results-item '+p+'"><span class="mm-item-number">'+i+'</span><span class="mm-item-info">'+g+' - '+p+'</span></li>');
   m[i] = c;
   ttl += m[i];
  }
  var results;
  results = ( ( ttl / count ) * 100 ).toFixed(0);
  jQuery('.mm-survey-results-score').html( results + '%' );
 }
 function goBack() {
  jQuery('.mm-back-btn').on('click', function() {
   jQuery('.mm-survey-bottom').slideDown();
   jQuery('.mm-survey-results').slideUp();
  });
 }



 

컨트롤 f 로 var ax 부분 찾으시고 


var ax = ['0','<?php echo $view['wr_9'];?>','mercedes','3.14','3'];


이렇게 하시면 됩니다 



 

<php echo$view['wr_9']> 잘못된방법X

<?php echo $view['wr_9']?> 옳은 방법O

답변을 작성하시기 전에 로그인 해주세요.
전체 233
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT