2013-05-28 35 views
12

Im sử dụng bootstrap với x-editable và im cố gắng làm cho nó hoạt động khi nút lưu từ x-editable được nhấp vào tệp php sẽ được thực hiện.cuộc gọi ajax có thể chỉnh sửa không xử lý url được chỉ định

Ive đã thử mọi thứ trong kiến ​​thức của mình để sửa lỗi này nhưng không phải là một lập trình viên javascript hardcore để thay đổi nó thành Json để thử nó là quan điểm của tôi một chút nỗ lực.

Ive đọc tài liệu về x-có thể chỉnh sửa và đây là cách để làm việc với nó.

Vì vậy, đây là html:

<a href="#" class="username">superuser</a> 

Các Javascript:

 $.fn.editable.defaults.mode = 'inline'; 

     $('.username').editable({ 
      type: 'text', 
      pk: 1, 
      url: 'post.php', 
     }); 

Khi post.php thiếu x-có thể chỉnh sửa cho một lỗi, tuy nhiên nếu nó thấy file php nó không làm gì cả. nội dung từ tệp php không liên quan vì chỉ có nhật ký bảng điều khiển có kiểm tra trong đó.

Nhật ký bàn điều khiển không bao giờ được thực hiện và tôi không thể hiểu tại sao nó không hoạt động, tôi đã thấy 1 hoặc 2 vấn đề như điều một trên Stackoverflow vv tuy nhiên không sử dụng thông tin đầy đủ.

Đây là lần đầu tiên tôi phải hỏi một cái gì đó trên internet vì vậy tôi hy vọng ai đó có thể giúp tôi với điều này.

Tôi đã thử những thứ như thay đổi url thành localhost/dir/etc tuy nhiên không có hiệu lực. cũng thiết /posturl, và thêm var posturl = "post.php"; không giúp

oh và tôi đã thử nghiệm tất cả các nguồn lực: nhưng nếu nó giúp ở đây:

<!-- Le styles --> 
<!-- jQUERY --> 
<script src="http://code.jquery.com/jquery.js"></script> 
<!-- Sharre --> 
<script src="recources/assets/js/jquery.sharrre-1.3.4.js"></script> 
<!-- Minnified bootstrap --> 
<script src="recources/assets/min/js/bootstrap.min.js"></script> 
<!-- Custom CSS --> 
<link href="recources/assets/css/pagestyle.css" rel="stylesheet"> 
<!-- X - Editable --> 
<link href="recources/assets/css/bootstrap-editable.css" rel="stylesheet"> 
<!-- External link --> 
<script src="//cdnjs.cloudflare.com/ajax/libs/x-editable/1.4.4/bootstrap-editable/js/bootstrap-editable.min.js"></script> 

Trả lời

7

Bạn đã cố gắng thay đổi tùy chọn gửi?

$('.username').editable({ 
    type: 'text', 
    pk: 1, 
    url: 'post.php', 
    send: 'always' 
}); 

Nếu không, hãy thử gỡ lỗi phiên bản chưa được khởi động bootstrap-editable.js và thêm điểm ngắt tại đây https://github.com/vitalets/x-editable/blob/master/src/editable-form/editable-form.js#L189. Tôi đã có một vấn đề tương tự và đó là những gì tôi đã làm. Hy vọng rằng sẽ giúp.

26

Sử dụng tham số send vì nó có thể xác định Chiến lược để gửi dữ liệu đến máy chủ. Nó có thể là tự động | luôn | không bao giờ. Khi dữ liệu 'tự động' sẽ chỉ được gửi trên máy chủ nếu pkurl được xác định, nếu không giá trị mới sẽ được lưu trữ cục bộ.

Bạn có thể thiết lập nó cho tất cả các đầu vào của mã này:

$.fn.editable.defaults.send = "always"; 

Hoặc Tùy mỗi đầu vào cho chiến lược có liên quan như thế này:

$('.username').editable({ 
    send: 'always' 
}); 
+2

Đây là một lời giải thích tốt hơn và ví dụ. –

Các vấn đề liên quan