Giả sử tôi có một trang web với một số trường mà tôi muốn chạy một số tính toán. Tôi có một số lượng đầu vào, và trong backbone.js của tôi Xem tôi bị ràng buộc sự kiện "thay đổi" để đầu vào này.Làm cách nào để có được giá trị của dữ liệu người dùng đã nhập?
Làm cách nào để nhận giá trị của các thay đổi đối với trường nhập?
Tôi tìm thấy phương pháp này (bên dưới) để nhận được giá trị, nhưng nó cảm thấy sai vì tôi phải biết lại ID phần tử trong hàm của mình. Tôi không thể làm điều này với một lớp học, ví dụ.
window.Calculations = Backbone.View.extend({
(...)
events: {
'change input#quantity': 'changeQuantity'
},
changeQuantity: function() {
var val = $(this.el).find('input#quantity').val();
this.model.set({'quantity': val});
}
});
Và trong HTML:
<input type="text" id="quantity" value="<%= quantity %>">
Am tôi tiếp cận này một cách chính xác? Có một biến truy cập đối tượng đã được thay đổi không? Tôi biết rằng $ (this.el) không phải là nó, nó chỉ là container.
Cảm ơn bạn, hoạt động! Tôi tự hỏi tại sao tôi không thấy nó trong tài liệu ở bất cứ đâu. –
thực sự, bởi vì đây không phải là xương sống, tất cả các xương sống làm là ràng buộc các chức năng cho sự kiện của phần tử sau khi kết xuất. nó là jQuery mà vượt qua các đối số cho hàm gọi lại, và tôi đặt cược điều này là tài liệu trong tài liệu jQuery. tuy nhiên, việc thêm một dòng tham chiếu đến các trang Tài liệu jquery này không thể làm tổn thương được, bạn đã đúng về điều đó. – Sander