EasyUIでのdataGridのインライン編集例の詳細説明
この記事は、EasyUI での dataGrid のインライン編集の実装コードを主に紹介するもので、困っている人は参考にしていただければ幸いです。
この js コードは他の人が書いたものなので、ベストではないかもしれませんが、他の人が最初に機能的な問題を解決するのに役立つなら素晴らしいと個人的には思います。少し修正して自分のプロジェクトで使用したので、共有するためにここに投稿します。バックエンドで使用される TinkPHP は、追加、削除、変更を確認するのが比較的簡単なので、ここでは掲載しません。私は怠け者なので、フロントデスクのレンダリングは投稿しません。
$(function () { var datagrid; //定义全局变量datagrid var editRow = undefined; //定义全局变量:当前编辑的行 datagrid = TskupluAddPacket.datagrid({ url: ThinkPHP['MODULE'] + '/Tskuplu/getPacketList', //请求的数据源 iconCls: 'icon-save', //图标 pagination: true, //显示分页 pageSize: 15, //页大小 pageList: [15, 30, 45, 60], //页大小下拉选项此项各value是pageSize的倍数 fit: true, //datagrid自适应宽度 fitColumn: false, //列自适应宽度 striped: true, //行背景交换 nowap: true, //列内容多时自动折至第二行 border: false, idField: 'packetid', //主键 sortName : 'packetid', //排序字段 sortOrder : 'desc', //排序方式 columns: [[//显示的列 {field: 'packetid', title: 'ID', width: 100, sortable: true, checkbox: true }, { field: 'packunit', title: '包装单位', width: 100, sortable: true, editor: { type: 'validatebox', options: { required: true} } }, { field: 'packqty', title: '包装细数', width: 100, editor: { type: 'validatebox', options: { required: true} } }, { field: 'packspec', title: '包装规格', width: 100, editor: { type: 'validatebox', options: { required: true} } } ]], queryParams: { pluid: $('#addpluid').val() }, //查询参数 toolbar: [{ text: '添加', iconCls: 'icon-add', handler: function () {//添加列表的操作按钮添加,修改,删除等 //添加时如果没有正在编辑的行,则在datagrid的第一行插入一行 if (editRow == undefined) { datagrid.datagrid("insertRow", { index: 0, // index start with 0 row: {} }); //将新插入的那一行开户编辑状态 datagrid.datagrid("beginEdit", 0); //给当前编辑的行赋值 editRow = 0; } } }, '-', { text: '删除', iconCls: 'icon-remove', handler: function () { //删除时先获取选择行 var rows = datagrid.datagrid("getSelections"); //选择要删除的行 if (rows.length > 0) { $.messager.confirm("提示", "你确定要删除吗?", function (r) { if (r) { var ids = []; for (var i = 0; i < rows.length; i++) { ids.push(rows[i].packetid); } //将选择到的行存入数组并用,分隔转换成字符串, //本例只是前台操作没有与数据库进行交互所以此处只是弹出要传入后台的id //alert(ids.join(',')); $.ajax({ url : ThinkPHP['MODULE'] + '/Tskuplu/deletePacket', type : 'POST', data : { ids : ids.join(',') }, beforeSend : function (){ $.messager.progress({ text : '正在处理中...' }); }, success : function (data){ $.messager.progress('close'); if (data >0){ datagrid.datagrid('reload'); $.messager.show({ title : '操作提醒', msg : data + '条数据被成功删除!' }) } else if( data == -999 ) { $.messager.alert('删除失败', '对不起,您没有权限!', 'warning'); } else { $.messager.alert('删除失败', '没有删除任何数据!', 'warning'); } } }); } }); } else { $.messager.alert("提示", "请选择要删除的行", "error"); } } }, '-', { text: '修改', iconCls: 'icon-edit', handler: function () { //修改时要获取选择到的行 var rows = datagrid.datagrid("getSelections"); //如果只选择了一行则可以进行修改,否则不操作 if (rows.length == 1) { //当无编辑行时 if (editRow == undefined) { //获取到当前选择行的下标 var index = datagrid.datagrid("getRowIndex", rows[0]); //开启编辑 datagrid.datagrid("beginEdit", index); //把当前开启编辑的行赋值给全局变量editRow editRow = index; //当开启了当前选择行的编辑状态之后, //应该取消当前列表的所有选择行,要不然双击之后无法再选择其他行进行编辑 datagrid.datagrid("unselectAll"); } } } }, '-', { text: '保存', iconCls: 'icon-save', handler: function () { //保存时结束当前编辑的行,自动触发onAfterEdit事件如果要与后台交互可将数据通过Ajax提交后台 datagrid.datagrid("endEdit", editRow); editRow = undefined; } }, '-', { text: '取消编辑', iconCls: 'icon-redo', handler: function () { //取消当前编辑行把当前编辑行罢undefined回滚改变的数据,取消选择的行 editRow = undefined; datagrid.datagrid("rejectChanges"); datagrid.datagrid("unselectAll"); } }, '-'], onAfterEdit: function (rowIndex, rowData, changes) { //endEdit该方法触发此事件 //var row = datagrid.datagrid("getData").rows[rowIndex]; //获取某一行的值 var inserted = datagrid.datagrid('getChanges','inserted'); var updated = datagrid.datagrid('getChanges','updated'); if(inserted.length < 1 && updated.length <1){ editRow = undefined; datagrid.datagrid('unselectAll'); return; } var url = ''; if(inserted.length>0){ url=ThinkPHP['MODULE'] + '/Tskuplu/addPacket'; } if(updated.length>0){ url=ThinkPHP['MODULE'] + '/Tskuplu/updatePacket'; } $.ajax({ url : url, type : 'POST', data : { 'pluid': $('#addpluid').val(), 'packetid':rowData.packetid, 'packunit':rowData.packunit, 'packqty' :rowData.packqty, 'packspec':rowData.packspec }, beforeSend : function (){ $.messager.progress({ text : '正在处理中...' }) }, success : function (data){ $.messager.progress('close'); if (data > 0){ datagrid.datagrid("acceptChanges"); $.messager.show({ title : '操作提示', msg : '添加成功' }); editRow = undefined; datagrid.datagrid("reload"); $('#addcheck').val(1); } else if (data == -999) { $.messager.alert('添加失败', '抱歉!您没有权限!', 'warning'); } else { datagrid.datagrid("beginEdit",editRow); $.messager.alert('警告操作', '未知错误!请重新刷新后提交!', 'warning'); } datagrid.datagrid("unselectAll"); } }); ////////////////// }, onDblClickRow: function (rowIndex, rowData) { //双击开启编辑行 if (editRow == undefined) { datagrid.datagrid("beginEdit", rowIndex); editRow = rowIndex; } } }); });
関連する推奨事項:
データの各行にアクションボタンを追加するEasyUIのDataGridの例の詳細な説明
以上がEasyUIでのdataGridのインライン編集例の詳細説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









Tencent Docs でドキュメントを編集する方法を知っている人はいますか? 知らなくても問題ありません。今日は、編集者が Tencent Docs でドキュメントを編集する方法を図で詳しく説明します。お役に立てれば幸いです。 Tencent ドキュメントでのドキュメント編集の詳細な図による説明 1. まず、Tencent ドキュメントに直接入力し (お持ちでない場合は、今すぐダウンロードしてください!)、直接ログインします (QQ と TIM の 2 つのログイン方法がサポートされています) 2. ログイン後、右上隅の [追加] をクリックして、オンライン ドキュメント、オンライン フォーム、新しいフォルダーなどを直接作成します! 3. 次に、必要に応じて情報を入力します。

タイトル: 削除後に hosts ファイルを復元する方法 概要: hosts ファイルはオペレーティング システムの非常に重要なファイルであり、ドメイン名を IP アドレスにマップするために使用されます。誤って hosts ファイルを削除すると、特定の Web サイトにアクセスできなくなったり、その他のネットワークの問題が発生したりする可能性があります。この記事では、Windows および Mac オペレーティング システムで誤って削除したホスト ファイルを復元する方法を紹介します。テキスト: 1. Windows オペレーティング システムでホスト ファイルを復元する Windows オペレーティング システムでのホスト ファイル

Apple では、ホーム画面のページをいつでも並べ替えたり、自由に削除したりして、ホーム画面をすばやく変更できます。こうすることで、複数のアプリやウィジェットを 1 つずつドラッグして削除することなく、簡単に非表示にすることができます。この記事ではiPhoneのホーム画面でページを編集する方法を解説します。 CONTENTS[SHOW] iPhone でホーム画面のページを編集する方法を示します。 ホーム画面を編集して、ページを並べ替えたり、ホーム画面内の特定のページを非表示/再表示したり、ページを完全に削除したりすることができます。 iPhone ホーム画面の編集を開始するには、ホーム画面の空いている領域を長押しします。ホーム画面がジッター モードになったら、画面の下部にあるドットの列をタップします。すべてのホーム画面がグリッド形式で表示されるはずです。オプション 1: ホーム画面上

文書を編集した後、次回の編集や変更に便利なように文書を保存します。編集した文書をクリックして直接変更できる場合もありますが、何らかの理由で、いくら操作しても応答がない場合もあります。 Word 文書をクリックしてもコマンドは実行されません。Word 文書を編集できない場合はどうすればよいですか?心配しないでください。エディターがこの問題を解決するのに役立ちます。操作プロセスを見てみましょう。 Word 文書を開いてテキストを編集すると、次の図に示すように、ページの右側に「編集を制限する」というプロンプトが表示されます。 2. 編集をキャンセルする必要があり、設定したパスワードを知る必要があるため、下図に示すように、ポップアップ プロンプトの下にある [保護の停止] をクリックします。 3. 次の図に示すように、[ドキュメントの保護解除] ダイアログ ボックスにパスワードを入力し、[OK] をクリックします。

1. 準備をします。マテリアルをマテリアル ライブラリにインポートし、タイムラインにドラッグします。 2. タイムライントラックの [T] ボタンをクリックし、1T トラックに字幕を追加することを選択すると、字幕編集ページに移動します. 操作は図に示すとおりです: 3. ここで、テキストコンテンツを書き込むことができます。欲しい。字幕が横書きであることがわかります。では、垂直字幕を実装する方法を見てみましょう。まだ内容を書かないで、図のように [挿入 - テキスト - 縦書き] を選択します。 4. 単語を書き込むと、縦方向に配置されます。字幕の位置、サイズ、フォント、色などを調整したら、ウィンドウの左上隅にある「保存」をクリックします。

easyui は jQuery プラグインです。 easyui は JQuery に基づくフロントエンド UI インターフェイス プラグインで、Web 開発者が機能豊富で美しい UI インターフェイスをより簡単に作成できるようにするために使用されます。 easyui は HTML5 Web ページを完全にサポートするフレームワークで、開発者が Web 開発の時間と規模を節約するのに役立ちます。

iPhone のネイティブ メッセージ アプリを使用すると、送信されたテキストを簡単に編集できます。このようにして、間違いや句読点を修正したり、テキストに適用された可能性のある間違った語句や単語を自動修正したりすることができます。この記事では、iPhone でメッセージを編集する方法を学びます。 iPhone でメッセージを編集する方法 必須: iOS16 以降を実行している iPhone。 iMessage テキストはメッセージ アプリでのみ編集でき、元のテキストを送信してから 15 分以内に限り編集できます。 iMessage 以外のテキストはサポートされていないため、取得または編集できません。 iPhone でメッセージ アプリを起動します。 [メッセージ] で、メッセージを編集する会話を選択します

PyCharm は、Python 開発で広く使用されている強力な Python 統合開発環境 (IDE) です。豊富なコード編集機能を提供するだけでなく、インテリジェントなプロンプト、デバッグ、バージョン管理などのための強力なツールも備えています。 PyCharm では、中国語設定によりコード編集がよりスムーズかつ便利になります。この記事では、PyCharm の中国語設定を詳しく紹介し、具体的なコード例をいくつか示します。言語パックをインストールする まず、PyCharm の設定で、次のものが必要です。
