오케이, 긴 제목을 용서해주세요. 내 코드 스 니핏은 페이지 하단에 있습니다.Javascript 함수 TypeError 단 substring() 문자열에만 해당
피벗 테이블의 행과 열을 미리 정의 된 값으로 변경하는 자바 스크립트 프로그램을 만들었습니다. 처음에는 값을 삽입하는 데 자바 스크립트를 사용하지 않는 한 잘 작동하는 을 사용하여이 작업을 수행했습니다.
IE <onclick="presetFunction('count', 'Heatmap', ['ClassNum'], ['Grade'])">
페이지에 입력하면 정상적으로 작동합니다. 그러나 자바 스크립트를 사용하여 위의 행을 페이지에 배치 할 수는 없습니다.
콘솔에서 "TypeError : opts.aggregators [aggregator.val (...)]가 함수가 아닙니다."라는 오류가 발생했습니다. 내 유형을 검사했습니다. 내 문자열 해부가 유형을 변경 한 경우를 대비하여), 그것은 문제가 아니었다. 가치를 확인 했는데도 문제가되지 않습니다.
function presetFunction(Agg, Rend, Col, Row) {
$(".pvtRenderer").val(Rend).trigger("change");
$(".pvtAggregator").val(Agg).trigger("change");
$(".label.label-info").each(function (index, element) {
test = $(element).html();
test = test.substring(6, test.length - 42);
if ((Col.indexOf(test)) != -1)
$(".pvtAxisContainer.pvtRows.ui-sortable").append(element);
else if (Row.indexOf(test) != -1)
$(".pvtAxisContainer.pvtHorizList.pvtCols.ui-sortable").append(element);
else
$(".pvtAxisContainer.pvtUnused.pvtHorizList.ui-sortable").append(element);
$(element).triggerHandler("");
});
}
문자열을주기 : 주위 사물 이동
<li id="one" class="Barchart">
<a href="#one">Barchart<span>5</span></a>
<ul id="bchart" class="sub-menu">
</ul>
</li>
자바 스크립트 :
요소 내가 온 클릭에 부착 해요 : 여기
내가 사용하고 코드 snippits입니다 여기에서 테스트하기 :function loadPresets() {
var presets = "\'count\', \'Bar Chart\', [\'ProfLastName\'], [\'Grade\']";
var sep = presets.indexOf(",");
var style = presets.substr(0, sep).trim();
presets = presets.substr(sep + 1, presets.length).trim();
sep = presets.indexOf(",");
var type = presets.substr(0, sep).trim();
presets = presets.substr(sep + 1, presets.length).trim();
sep = presets.indexOf("]");
var row = presets.substr(0, sep + 1);
presets = presets.substr(sep + 2, presets.length);
var col = presets.trim();
var link = '<li><a href=\"#\" id=\"b01\"><em>01</em>Teacher vs. Grade</a></li>';
$("#bchart").append(link);
$("#b01").click(function() {
presetFunction(style, type, row, col);
});
}
도움을 주시면 감사하겠습니다. CF
같이 보입니다에 * 사전 * 다음 다른 변수에 할당 할 그것을 분할하면 해당 작업을 수행하는 지나치게 복잡한 방법처럼 보인다. – RobG
나는이 기능을 테스트하기 위해 그렇게하고있었습니다. 나는 실제로 그 형식으로 문자열을 끌어 오기 위해 PHP를 사용하고 있습니다. 나는 끈이 어떻게 생겼는지 보여줘야한다고 생각했다. – Jesusfreaks95