2014-09-23 16 views
10

Tôi đang sử dụng góc-xeditable để chỉnh sửa các phần tử trong một biểu mẫu. Tôi muốn có tất cả các yếu tố trong chế độ "có thể chỉnh sửa" mọi lúc, ví dụ: không cần nhấn nút "chỉnh sửa" trước khi người dùng bắt đầu chỉnh sửa.cách tạo trạng thái chỉnh sửa góc có thể chỉnh sửa luôn bật

Tôi đã cố gắng sử dụng $ show() trong bộ điều khiển của mình để bật các phần tử trong biểu mẫu, tuy nhiên có vẻ như các phần tử lại đi vào trạng thái xem, ví dụ khi sử dụng "onaftersave" khi cố lưu giá trị v.v.

Tôi làm cách nào để luôn ở chế độ chỉnh sửa nơi người dùng không bao giờ cần bật chỉnh sửa để bắt đầu chỉnh sửa giá trị?

Trả lời

5

Tôi gặp vấn đề tương tự. Ngay cả khi cố gắng để $ show() các hình thức một lần nữa vào cuối chức năng onaftersave của tôi nó vẫn sẽ không hoạt động. Tôi nghi ngờ khả năng hiển thị đang được ẩn sau khi chức năng onaftersave chạy nhưng tôi đã không thực sự kiểm tra xem đó là trường hợp. Dưới đây là cách tôi nhận được thông tin này:

$scope.$watch('yourFormName.$visible', function() { 
    $scope.yourFormName.$show(); 
}); 

Bây giờ bất cứ khi nào hiển thị biểu mẫu thay đổi thành ẩn, nó sẽ chỉ hiển thị lại bất kể khi nào thay đổi.

+0

hey tcox, tôi đang phải đối mặt với cùng một vấn đề, tôi luôn luôn muốn bảng ở chế độ có thể chỉnh sửa. Tôi đã cố gắng theo cách của bạn nhưng khi tôi gọi $ scope.form.profileform. $ Visible = true; hoặc $ scope.form.profileform. $ show(); nó nói không xác định. tên biểu mẫu của tôi là name = "form.profileform". bạn có thể vui lòng giúp đỡ – Jayesh

+0

Tôi không chắc chắn nếu bạn phải nói $ scope.form.profileform, hãy thử $ scope.profileform – tcox

1

Nếu mẫu của bạn đã được mở, và bạn chỉ muốn giữ nó mở sau khi gửi, bạn có thể làm điều này:

<form editable-form name="MyForm" onbeforesave="saveMyData()" onaftersave="keepFormOpen()"> 

và chức năng keepFormOpen() sẽ giống như thế này:

$scope.keepFormOpen = function() { 
    return "fake error message"; 
} 

Điều này thực chất là cung cấp cho biểu mẫu thông báo lỗi giả sau khi bạn đã lưu dữ liệu của mình. Thông báo lỗi giả này sẽ làm gián đoạn quá trình đóng biểu mẫu, nhưng vì nó được gọi sau khi bạn đã lưu dữ liệu của mình, nó sẽ không ảnh hưởng đến lần gửi trước đó.

+0

cảm ơn. Tôi vui mừng .. nó hoạt động .. u làm ngày của tôi. – Jayesh

+0

Vui vì tôi có thể giúp! Đừng quên chấp nhận nó như là một câu trả lời nếu nó làm việc cho bạn;) – bajuwa

7

Có thể thử thêm shown=true trong html của bạn:

<form editable-form shown="true"> 
+0

nó không hoạt động. – Jayesh

+0

Điều này làm việc cho tôi. Cảm ơn rất nhiều :) – Sampath

0

Để thực sự giữ mở các hình thức chúng ta có thể làm như sau:

<form editable-form name="MyForm" onbeforesave="saveMyData()" onhide="MyForm.$show()"> 
Các vấn đề liên quan