Đến hẹn lại lên, hôm nay mình sẽ chia sẻ với các bạn cách sử dụng Mustache Template với jQuery trong lập trình JavaScript. Việc sử dụng Mustache. js sẽ giúp bạn hạn chế việc xử lý logic trong JavaScript. Qua đó, giúp code của bạn trở nên rút gọn và sáng hơn
Mẫu ria mép trong HTML
Mình đã chuẩn bị sẵn một ví dụ để các bạn tiện tham khảo
First job must do include ria mép. js trong tệp HTML
Tiếp theo đó là thông báo Mẫu ria mép sử dụng tập lệnh thẻ
Đoạn mã thẻ này mình set id="my-template" để tiện sử dụng trong JavaScript, và gõ="x-tmpl-ria mép" - bắt buộc phải thông báo rằng đây là Mẫu ria mép, chứ không phải kịch bản để thực thi
Bên trong thẻ là đoạn HTML bạn dùng làm mẫu. Với đặc điểm quan trọng là mỗi tham số được đặt trong cặp dấu {{biến}}. Qua đó, Ria mép sẽ biết và thay thế nó bằng các đối số tương ứng khi bạn truyền vào
Sử dụng Mustache Template with jQuery
Bạn có thể sử dụng Mustache. js mà không cần truy cập jQuery. Tuy nhiên, việc sử dụng thư viện jQuery sẽ giúp code sạch sẽ hơn
Để sử dụng mẫu, trước tiên, bạn phải trích xuất nó ra từ tệp HTML
let tmpl = $["#my-template"].html[];
Đến đây bạn đã có mẫu rồi, tiếp tục sử dụng phương thức phân tích cú pháp của Mustache để phân tích mẫu trên. Việc sử dụng phương thức này là không bắt buộc, nhưng nó sẽ giúp tăng tốc độ kết xuất sau này
Tương tự như bài viết trước, bài viết này mình cũng mô phỏng lại việc đưa ra các bình luận cho một bài viết. Dữ liệu được lưu trong mảng các đối tượng với 2 thuộc tính là tên và nhận xét
let data = [
{ name: "John", comment: "That is great" },
{ name: "Alex", comment: "It's helpful" },
{ name: "David", comment: "Thanks a lot" },
];
Công việc cuối cùng là kết xuất Mustache Template với jQuery và dữ liệu khi người dùng nhấn vào nút Add
$["#btn-add"].click[[] => {
data.forEach[[item] => {
let rendered = Mustache.render[tmpl, item];
$["#container"].append[rendered];
}];
}];
Trong phương thức kết xuất, phần đầu tiên thành phần đầu tiên là Mẫu ria mép đã được lấy ra từ trước;
Kết quả thu được là DOM, có cấu trúc như mẫu với các tham số đã được thay thế bằng dữ liệu dữ liệu trên. Bây giờ, bạn chỉ cần sử dụng phương thức append để đưa nó vào bên trong của thẻ div - với id="container"
Ngoài ra, để loại bỏ thành phần HTML mới được thêm vào, bạn có thể đơn giản sử dụng phương thức trống để xóa nó khỏi HTML
$["#btn-rm"].click[[] => {
$["#container"].empty[];
}];
Kết luận
Trên đây là cách mình sử dụng Mẫu ria mép với jQuery. Rõ ràng, việc sử dụng kết hợp 2 thư viện JavaScript này giúp mã trở nên ngắn gọn và rõ ràng hơn. Hy vọng với những hướng dẫn đơn giản trên, bạn có thể biết cách sử dụng Mustache. js
Xin chào và hẹn gặp lại ở bài viết tiếp theo, thân ái
★ Nếu các bạn thấy bài viết này hay thì hãy theo dõi mình trên Facebook để nhận thông báo khi có bài viết mới nhất nhé
Trong một hàm jQuery, tôi cần phải lặp qua một số phần tử HTML với cùng một lớp và so sánh một chuỗi công cụ có thể với nội dung của các phần tử đó trong mỗi lần lặp.
Nội dung chính Hiển thị
Bất cứ ai cũng có thể cho tôi một số lời khuyên làm thế nào để làm điều này?
Rahul Gupta
9. 3436 huy hiệu vàng58 Huy hiệu bạc67 Huy hiệu đồng6 huy hiệu vàng58 huy hiệu bạc67 huy hiệu đồng
Đã hỏi ngày 29 tháng 10 năm 2013 lúc 9. 08 29 tháng 10, 2013 lúc 9. 08
1
try this one
$.each[$['.your-class-name'], function[] {
if[$[this].text[] == 'your-text']
console.log['yes'];
else
console.log['no'];
}];
Đã trả lời ngày 29 tháng 10 năm 2013 lúc 9. 12 29 tháng 10, 2013 lúc 9. 12
Rasool Ghafarirasool Ghafari Rasool Ghafari
3. 9735 huy hiệu vàng39 Huy hiệu bạc67 Huy hiệu đồng5 huy hiệu vàng39 huy hiệu bạc67 huy hiệu đồng
Xin chào, bạn có thể thực hiện điều đó thông qua mã dưới đây
$[function[] {
var foundin = $['.yourclass:contains["I am a simple string"]'];
}];
Foundin sẽ là một đối tượng jQuery chứa bất kỳ phần tử phù hợp nào. Xem thông tin API tại. http. // tài liệu. jquery. com/bộ chọn/chứa#văn bản
Đã trả lời ngày 29 tháng 10 năm 2013 lúc 9. 19 29 tháng 10, 2013 lúc 9. 19
CodeBreakerCodeBreaker codebreaker
1. 4451 Huy hiệu vàng12 Huy hiệu bạc18 Huy hiệu đồng1 huy hiệu vàng12 huy hiệu bạc18 huy hiệu đồng
Bạn có thể làm điều đó bằng cách sử dụng hàm. mỗi []. Kiểm tra tài liệu chính thức. http. //api. jquery. com/từng/
________số 8Phương pháp. each [] được thiết kế để làm cho các cấu trúc vòng lặp DOM rút ngắn và dễ bị lỗi. When being call it it it it it repeat on the DOM section is a section of jQuery Objects. Mỗi lần gọi lại, nó được thông qua vòng lặp hiện tại, bắt đầu từ 0. Quan trọng hơn, cuộc gọi lại được kích hoạt trong bối cảnh của phần tử DOM hiện tại, do đó, từ khóa này đề cập đến phần tử
Đã trả lời ngày 29 tháng 10 năm 2013 lúc 9. 13 29 tháng 10, 2013 lúc 9. 13
Poiuytrezpoiuytrez poiuytrez
Huy hiệu vàng 20. 4K3333 huy hiệu vàng108 huy hiệu bạc165 huy hiệu đồng
Đây là bản fiddle js demo cho bạn, hãy kiểm tra nó. demo JS FIDDLE cho bạn, xem thử
HTML
This is div 1
This is div 2
This is div 3
This is div 4
JS
0Đã trả lời ngày 29 tháng 10 năm 2013 lúc 9. 32 29 tháng 10, 2013 lúc 9. 32
Rahul Guptarahul Gupta Rahul Gupta
9. 3436 huy hiệu vàng58 Huy hiệu bạc67 Huy hiệu đồng6 huy hiệu vàng58 huy hiệu bạc67 huy hiệu đồng
1
each [chức năng] Trả về. Trả về jQuery. jQuery
description. lặp lại một đối tượng jQuery, thực hiện một hàm cho mỗi phần tử phù hợp. Lặp lại một đối tượng jQuery, thực thi một hàm cho từng phần tử phù hợp
Phiên bản được thêm vào. 1. 0. each [chức năng] . mỗi [chức năng]
hàm số
Một hàm để thực thi cho từng phần tử phù hợp
Phương pháp
$[function[] {
var foundin = $['.yourclass:contains["I am a simple string"]'];
}];
0 được thiết kế để làm cho các cấu trúc vòng lặp DOM rút ngắn và dễ bị lỗi hơn. When being call it it it it it repeat on the DOM section is a section of jQuery Objects. Mỗi lần gọi lại, nó được thông qua vòng lặp hiện tại, bắt đầu từ 0. Quan trọng hơn, cuộc gọi lại được kích hoạt trong bối cảnh của phần tử DOM hiện tại, do đó từ khóa
$[function[] {
var foundin = $['.yourclass:contains["I am a simple string"]'];
}];
1 đề cập đến phần tửGiả sử bạn có một danh sách đơn giản không theo thứ tự trên trang
You can select the list list and repeat on them
1
2
3
3Do đó, một thông báo đã được đăng nhập cho từng mục trong danh sách
0. foo 1. Thanh
1. thanh
Bạn có thể dừng vòng lặp từ trong chức năng gọi lại bằng cách trả về
$[function[] {
var foundin = $['.yourclass:contains["I am a simple string"]'];
}];
2Lưu ý. Hầu hết các phương thức jQuery trả về một đối tượng jQuery cũng lặp qua tập hợp các phần tử trong bộ sưu tập jQuery - một quá trình được gọi là ẩn. Khi điều này xảy ra, thông thường không cần thiết phải lặp lại một cách rõ ràng bằng phương pháp
$[function[] {
var foundin = $['.yourclass:contains["I am a simple string"]'];
}];
01
2
3
4
5
6
7
$[function[] {
var foundin = $['.yourclass:contains["I am a simple string"]'];
}];
0ví dụ
lặp lại trên ba div và đặt thuộc tính màu của chúng
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
$[function[] {
var foundin = $['.yourclass:contains["I am a simple string"]'];
}];
1Thử nghiệm
Để truy cập một đối tượng jQuery thay vì phần tử DOM thông thường, hãy sử dụng
$[function[] {
var foundin = $['.yourclass:contains["I am a simple string"]'];
}];
4. Ví dụ1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
________số 8Thử nghiệm
Use
$[function[] {
var foundin = $['.yourclass:contains["I am a simple string"]'];
}];
5 to exit from each [] loop before1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
$[function[] {
var foundin = $['.yourclass:contains["I am a simple string"]'];
}];
4Thử nghiệm
Làm thế nào để bạn lặp lại thông tin qua một yếu tố trong jQuery?
Each[], used to repeat, độc quyền, trên một đối tượng jQuery. $. Each [] function can be used to repeat on any collection collections, for if it is an object or an array. Trong trường hợp của một mảng, cuộc gọi lại được truyền một chỉ mục mảng và giá trị mảng tương ứng mỗi lần