$(document).on("keyup", "#seq_search", function() {
if(searchSequence() !== false && ($('#seq_search').val()) != "") searchSequence();
else printSequence();
console.log(searchSequence()); // 디버깅 해보니 searcgSequence 함수 부분이 계속해서 false가 아닌 undefined 가 찍힙니다! 문제가 무엇인지 모르겠습니다!
});
function procSearchSequence() {
var sequence = getSequence();
var search = $("#seq_search").val().toUpperCase();
var findSearchIndex = new Array();
if("string" === typeof(search)) {
if(sequence.match(search) == search) {
for(var i=0; i<sequence.length; i++) {
if(sequence.indexOf(search, i) != -1) {
var findIndex = sequence.indexOf(search, i);
findSearchIndex.push(findIndex);
i = findIndex;
}
}
var initResult = new Array();
for(var i=0; i<sequence.length; i++) {
var skip = false;
var cnt = 0;
for(var j=0; j<findSearchIndex.length; j++) {
if(i == findSearchIndex[j]) {
initResult.push('<span class="seq_highlight" data-count="'+ (i+1) +'" data-search="yes">');
for(var h=0; h<search.length; h++) {
initResult.push(sequence[i+h]);
cnt++;
}
cnt--;
initResult.push('</span>');
skip = true;
}
}
if($('#seq_search').val() != "") i += cnt;
if(skip === false) initResult.push('<span data-count="'+ (i+1) +'" data-search="yes">' + sequence[i] + '</span>');
}
initResult = initResult.join();
initResult = initResult.replace(/,/g, "");
return initResult;
} else return false; // 여기가 문제의 부분입니다. 분명 return false를 보내주었는데 이러네요!
}
}`
봐주셔서 정말 감사합니다 ㅠㅠ…
무엇이 문제인지 모르겠습니다!
검색한 값이 존재하지 않을 경우 return false 를 하게되는데 로그를 찍어보면 undefined로 출력이 됩니다! 도와주세요!!! ㅠㅠ