Я работаю над старым проектом, используя Struts- jquery -grid-tags. Мне пришлось обновить версию Struts до 2.5.22 и плагин Struts- jquery с 4.0.1 до 4.0.3. И, похоже, это все испортило.
В большинстве случаев моя работа заключалась в том, чтобы получать элементы с помощью селектора jquery. Я переписывал их с самого начала, я знаю, что это не лучшая практика, но у меня было очень мало времени.
Это существо говорит, что сейчас я столкнулся с чем-то более сложным, и я постараюсь сделать его коротким:
- есть сетка sjg: с шестью столбцами и типом данных json;
- последние 2 столбца доступны для редактирования и имеют атрибут editoptions (я опубликую его ниже);
- эти два последних столбца отображаются только как пустые столбцы с правильным заголовком, но без данных;
Если столбцы есть и они показывают правильный заголовок, моя ставка в том, что атрибут editoptions каким-то образом испортит все это.
У меня нет опыта работы со стойками, и, насколько я знаю, это старая платформа с некоторыми проблемами в последних версиях.
Вы не увидите заголовка strus- jquery в приведенном ниже коде, но он включен в jsp, который включает jsp, о котором я сейчас говорю. Это работает, и доказательством является то, что иначе я не увижу таблицу.
Есть идеи?
вот код:
<%@ taglib prefix="s" uri="/struts-tags"%>
<%@ taglib prefix="sj" uri="/struts-jquery-tags"%>
<%@ taglib prefix="sjg" uri="/struts-jquery-grid-tags"%>
<%@ taglib prefix="sec"
uri="http://www.springframework.org/security/tags"%>
<s:url var="remoteurl" action="surveyGrid" />
<s:url var="editurl" action="dataentry_edit" />
<s:url var="remoteOptions" action="dataentry_remoteOptions" />
<div id="messageSuccess" class="messageSuccessGrid"></div>
<sjg:grid formIds="gruvisInspectionForm"
viewrecords="true"
id="gridtable" dataType="json" href="%{remoteurl}"
gridModel="gridModel" rowList="10,15,20" rowNum="50" rownumbers="false"
resizable="false" editinline="true" editurl="%{editurl}" onSelectRowTopics="rowselect"
reloadTopics="reloadSurveyGrid" onCompleteTopics="reloadSurveyGrid" autowidth="true">
<sjg:gridColumn name="categoryQuestionId" index="categoryQuestionId" title="categoryQuestionId"
hidden="true" key="true" editable="true"/>
<sjg:gridColumn name="categoryId" index="categoryId" title="categoryId" hidden="true"
editable="true"/>
<sjg:gridColumn name="questdisplayorder" index="questdisplayorder"
title="%{getText('dataentry.no')}" sortable="false"
editable="false" width="15" align="center" />
<sjg:gridColumn name="question" index="question" title="%{getText('dataentry.question')}"
sortable="false" editable="false" resizable="false" />
<sjg:gridColumn name="questionscore" index="questionscore"
title="%{getText('dataentry.score')}" align="center" editable="true"
edittype="select" editoptions="{
value: { NA:'NA', 0:'0', 1:'1', 2:'2', 3:'3', 4:'4'},
dataEvents: [{
type: 'blur',
fn: function() {
var sr = jQuery('#gridtable').jqGrid('getGridParam','selrow');
actionEdit(sr);
}
}]
}"
width="15" />
<sjg:gridColumn name="questioncomments" index="questioncomments"
title="%{getText('dataentry.comments')}" align="center" sortable="false"
editable="true" edittype="text"
editoptions="{
maxlength: 1024,
dataEvents: [{
type: 'blur',
fn: function(e) {
var sr = jQuery('#gridtable').jqGrid('getGridParam','selrow');
actionEdit(sr);
}
}]
}" />
</sjg:grid>
<br />
спасибо !!!