Tôi đang viết một plugin jquery tùy chỉnh về cơ bản sao chép chức năng của một đầu vào. Tôi có thể giải thích tại sao, nhưng sự thật giải thích là khá dài và tôi tin rằng nó không liên quan đến câu hỏi.Mở rộng phương thức .val() của jQuery thành các phần tử không nhập
Sự cố xảy ra khi tôi cố gắng mở rộng phương thức .val() của jQuery vào plugin jquery tùy chỉnh của tôi. Dưới đây là những gì tôi đã thử:
$.fn.custom_text_input = function(options){
return this.each(function(){
var custom_text_input = new CustomTextInput(options, this)
$(this)[0].val = function(){
alert('something useful')
}
})
}
Tôi đã thử một vài biến thể khác của điều này, tất cả đều không có ích. Nếu bất cứ ai có bất kỳ ý tưởng mà sẽ làm việc, tôi sẽ rất nhiều đánh giá cao sự khôn ngoan!
Cảm ơn!
nên không định nghĩa hàm đi trong định nghĩa CustomTextInput của bạn? –
Tôi muốn có thể gọi nó từ bất cứ đâu bằng cách sử dụng bộ chọn jquery. ví dụ: $ ('# div'). custom_text_input() và sau đó một nơi khác trong mã của tôi $ ('# div'). val() –
BTW, '$ (this) [0]' này giống với 'this' . Khi bạn tạo một đối tượng jQuery, có một mảng zero-index của các phần tử DOM trong đối tượng jQuery đó. Vì vậy, khi bạn truy cập vào chỉ mục đầu tiên (số không) bạn sẽ có được phần tử đầu tiên. – Jasper