Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

jqGrid Act Lạ tải lại dữ liệu sau khi chèn và cập nhật

Tôi đã xác minh mã mà bạn sử dụng và tìm thấy lý do. Bạn có id vấn đề trùng lặp trong mã của bạn . Bạn đã xác định <table> phần tử được sử dụng cho jqGrid như sau

<table id="location"><tr><td /></tr></table>
<div id="pager-location"></div>

Nó có "location" dưới dạng id . Sau này bạn đã xác định

colModel: [
    {name:'idms_location',index:'idms_location', width:150, editable:true,add:true, del:true, key:true},
    {name:'location',index:'location', width:800,editable:true, add:true, del:true}     
],

nơi tên location sẽ được sử dụng làm tên cột. Vấn đề là tên cột sẽ được sử dụng để tạo id tên của các phần tử khác nhau của lưới. Hơn nữa, chỉnh sửa biểu mẫu sử dụng tên cột trực tiếp dưới dạng id giá trị của <input> trường đại diện cho vị trí . Sau khi sử dụng biểu mẫu Thêm, phần tử sau

<input name="location" class="FormElement ui-widget-content ui-corner-all" id="location" role="textbox" type="text">

tồn tại trên trang với id="location" cũng vậy. Nếu người dùng đóng biểu mẫu, biểu mẫu đó sẽ bị ẩn, nhưng không bị hủy. Vì biểu mẫu chỉnh sửa sẽ được đặt trên trang trước <table id="location"> $("#location tbody:first") được sử dụng trong dòng không tìm thấy bảng nhiều hơn và lưới trống.

Những gì bạn nên làm chỉ là đổi tên <table id="location"> đến một cái gì đó như <table id=" grid-location ">` hoặc chọn bất kỳ tên nào khác. Bạn nên cập nhật mã JavaScript tương ứng.

Các thay đổi khác cần được thực hiện trong lưới:

  • thay đổi jsonReader: {repeatitems: true, idms_location: "idms_location" } tới jsonReader: {id: "idms_location" } .
  • thêm gridview: true tùy chọn.
  • thêm autoencode: true tùy chọn.
  • xóa các tùy chọn không tồn tại add:true, del:true thuộc tính từ colModel
  • loại bỏ index thuộc tính từ colModel .
  • bạn nên sửa Content-Type Tiêu đề HTTP mà bạn sử dụng trong phản hồi máy chủ với dữ liệu JSON. Nó phải là Content-Type: application/json thay vì Content-Type: text/html mà bạn đang sử dụng hiện tại. Đó chỉ là một dòng mã PHP.
  • bạn có thể xóa {edit:true,add:true,del:true} các tùy chọn của navGrid - đó là các tùy chọn mặc định.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để tạo liên kết cố định được điều khiển bởi cơ sở dữ liệu?

  2. Làm thế nào để đếm tất cả các bản ghi nhưng chỉ lấy (LIMIT) một số cụ thể để hiển thị?

  3. Gặp lỗi 'số lần lặp lại không hợp lệ' từ regexp

  4. Nhận các bài đăng WP dựa trên nhiều cặp khóa / giá trị meta bằng cách sử dụng IN

  5. Cách KHÔNG THÍCH hoạt động trong MySQL