私はいくつかの古いコードを見ていて、選択されている連絡先インスタンス ID (チェックボックス) を、リモート フィールドが入力されるレポートを選択するボックスに添付するという目標を達成しようとしています。たとえば、これはコントローラーに渡されるパラメーターです。
[id:1, reportsToResults:[x, y, z, ], reportsTo.id:[56, 55, 55], reportsTo:[id:[56, 55, 55]], contactList:[55, 57], _contactList:[, , , ], _select:, action:index, controller:tempController]
私が理論的に必要としているのは、次のようなものです。
contactList:[ , , 55, 57, ] (where empty spaces are checkboxes that are NOT selected.
reportsTo.id:[ , , 56, 56, ] (where empty spaces are empty selection boxes.
値の配列を渡すにはどうすればよいですか? すべての contactList ID と reportsTo.id を渡すことはできますが、配列スロットに基づいて正しく一致させたり、それらを結び付けたりすることはできません。
何か案が:?
<!doctype html>
<html>
<head>
<meta name="layout" content="main">
</head>
<body>
<div id="company-roster" class="company-roster">
<h1>${companyName} Roster</h1>
<g:form>
<g:hiddenField name="id" value="${id}" />
<div class="choicePanel">
<div class="choicePanel-reportsTo">
<label>Save all reports to additions:</label>
<g:actionSubmit value="Update Reports To" action="addReportsTo"/>
</div>
</div>
<script>
function all() {
$(':checkbox[name=select]').click (function () {
$(':checkbox[name=contactList]').prop('checked', this.checked);
});
}
</script>
<div style="position:absolute; margin-top:10px; width: 1350px; height: 650px; overflow: auto;">
<table>
<thead>
<tr>
<th><g:checkBox name="select" onclick="all();"/></th>
<g:sortableColumn property="firstName" action="roster" title="${message(code: 'contact.firstName.label', default: 'First Name')}" />
<g:sortableColumn property="lastName" action="roster" title="${message(code: 'contact.lastName.label', default: 'Last Name')}" />
<th>Reports To</th>
</tr>
</thead>
<tbody>
<g:each in="${companyRoster}" status="i" var="contactInstance">
<tr class="${(i % 2) == 0 ? 'even' : 'odd'}">
<td><g:checkBox name="contactList" value="${contactInstance.id}" checked="${false}"/></td>
<td>${fieldValue(bean: contactInstance, field: "firstName")}</td>
<td>${fieldValue(bean: contactInstance, field: "lastName")}</td>
<td>
Reports To: <g:remoteField action="getReportsToResults" controller="contact" id="" update="rtResult_${contactInstance.id}" paramName="search" name="reportsToResults" value="" />
<br/>
<g:each in ="${contactInstance?.reportsTo}" var="reportsTo" status="x">
<li style="list-style-type:none;">${reportsTo}<g:link controller="contact" action="removeReportsTo" params="${[reportsToID: reportsTo.id, contactInstanceID: contactInstance.id, comp_id:id]}">Remove</g:link></li>
</g:each>
</td>
<td>
<div id="rtResult_${contactInstance.id}" class="rtResult_${contactInstance.id}">
<g:select name="reportsTo.id" from="${rtResults}" value="" />
</div>
</td>
</tr>
</g:each>
</tbody>
</table>
</div>
</g:form>
</div>
</body>
</html>