0

問題

私のタンポポのデータテーブルでは、テーブルの最後に、編集とユーザーの無効化/有効化の 2 つのボタンを含む列を追加しました。

以下の表

<c:url var="allUsersDatasource" value="/users-all" />
<datatables:table id="allUsersTable" url="${allUsersDatasource}" serverSide="true" row="user" >
    <datatables:column title="Username" property="username" />
    <datatables:column title="Email" property="email" renderFunction="users#userEmails"/>
    <datatables:column title="First Name" property="firstName"/>
    <datatables:column title="Last Name" property="lastName"/>
    <datatables:column title="Registred" property="registred" searchable="false" renderFunction="users#registredDate"/>
    <datatables:column title="Role" property="authority" searchable="false" renderFunction="users#userRole"/>
    <datatables:column title="Enabled" property="enabled" searchable="false" cssCellClass="enable-disable-icon" renderFunction="users#userEnabled"/>
    <datatables:column title="Action" property="enabled" sortable="false" searchable="false" renderFunction="users#userEnableDisable"/>
</datatables:table>

JavaScript関数は、以下の関数を使用してボタンをレンダリングします

function userEnableDisable(data, type, full) {
    if (data == "1") {
         return '<a type="button" class="btn btn-default btn-block">Edit</a>'+'<a type="button" class="btn btn-danger btn-block">Disable</a>';
    } else{
         return '<a type="button" class="btn btn-default btn-block">Edit</a>'+'<a type="button" class="btn btn-success btn-block">Disable</a>';
    }
}   

関数 (ユーザー名) にパラメーターを渡す必要があるため、ボタンをクリックすると、コントローラーに接続し、それに応じてフィールドを更新する特定の関数がトリガーされます。ユーザーが URI を持っていないことに注意してください

私は春のmvcを使用しています

これまでに試みたこと

function userEnableDisable(data, type, full) {
    if (data == "1") {
         return '<a type="button" class="btn btn-default btn-block" onclick="return editUser('+full.username+');">Edit</a>'+'<a type="button" class="btn btn-danger btn-block" onclick="return disableUser('+full.username+');">Disable</a>';
    } else{
         return '<a type="button" class="btn btn-default btn-block" onclick="return editUser('+full.username+');">Edit</a>'+'<a type="button" class="btn btn-success btn-block" onclick="return enableUser('+full.username+');">Enable</a>';
    }
}   

function editUser(data) {
    alert(data);
}   

function disableUser(data) {
    alert(data);
}   
function enableUser(data) {
    alert(data);
}   

ボタンをクリックすると、

Uncaught ReferenceError: "myusername" が定義されていません

ありがとう

4

1 に答える 1

0

簡単な解決策は、見積もりの​​問題でした。

私はこれを変更しました:

('+full.username+')

に:

(\''+full.username+'\')

理由はここで説明します

于 2015-12-18T12:50:06.980 に答える