간단한 문제보기 : http://jsfiddle.net/9bmrjnwe/2/ (오류를 생성하려면 편집 할 행을 클릭 한 다음 이전 행을 클릭하고 이전 행을 클릭하십시오. 편집 모드.이 사용자 지정 컨트롤은 기본적으로 "HTML 선택"동안 행을 편집. 오류가 팝업됩니다.JQgrid 구문 오류, custom_value 함수의 반환 값에 인식 할 수없는 표현
감사
나는 JQuery와에 새로 온
는. 나는 사용자 정의 컨트롤을 포함 내 웹 페이지에있는 jqGrid이 select2와 함께. 여기에 JQgrid 열의 관련 코드가 있습니다. editoptions: {
custom_element: function (value, options) {
var val = $(value);
var output = [];
output.push("<select id = 'JQGridSelectCol1' width=900>");
output.push('<option value= 101> ABC & XYZ </option>');
output.push('<option value= 102> ABC XYZ </option>');
output.push("</select>");
var selectText = output.join('');
$OuterDiv = $("<div id='SelectDivCol1'></div>");
$OuterDiv.append(selectText);
$select = $OuterDiv.children("#JQGridSelectCol1");
var value2 = $("#vEntries").jqGrid('getCell', lastSel, 'Code');
$select.val(value2);
return $OuterDiv;
},
custom_value: function myvalue(elem, operation, value) {
if (operation === 'get') {
return $(elem).find(":selected").text();
}
},
이제 해당 열에서 선택한 텍스트에 앰퍼샌드 문자 (&)가 포함 된 행을 클릭 할 때까지 오류가 발생하고 "구문 오류, 인식 할 수없는 표현식 : ABC & XYZ"라는 메시지가 나타납니다. 여기서 "ABC & XYZ "이 (가) 선택한 텍스트입니다. 내가 크롬을 통해 디버깅하는 노력이 줄에 오류를 발견 :
누구도 날이 점에서 인도 할 수 있습니까?
감사
StackOverflow에 오신 것을 환영합니다! [해당 제목에 "태그에"태그를 포함해야합니까? "] (http://meta.stackexchange.com/questions/19190/should-questions-include-tags-in-the-titles)를 참조하십시오. 여기서 컨센서스는 다음과 같습니다. "아니, 그들은해서는 안된다". –
오류는'custom_element'에 있습니다 만,'custom_value'의 코드 만 포함 시켰습니다. 전체 코드를 더 포함 할 수 있습니까? – Oleg
@Oleg : JQGrid가 특정 행의 그리드 열에서 텍스트 값을 얻으려고 시도 할 때 오류가 정확하게 나타나고 편집을 위해 "html select"를 렌더링하려고합니다 (나는 rowediting을 사용하고 있습니다). 간단히하기 위해 아주 간단한 코드를 넣고 select2도 제거했습니다. 오류가 계속 발생합니다 : "구문 오류, 인식 할 수없는 표현식 : ABC & XYZ". 콤보 상자에서 다른 옵션 (앰퍼샌드 문자 없음)을 선택하여 저장하고 뒤로 이동하면 오류가 발생하지 않습니다. 감사합니다 – developer