Вот то, как я прошел через это. Просто скопируйте и вставьте рабочие примеры ниже
<body>
<div rv-each-book="model.books">
<button rv-on-click="model.selectedBook | args book">
Read the book {book}
</button>
</div>
</body>
<script type="text/javascript">
rivets.formatters["args"] = function (fn) {
var args = Array.prototype.slice.call(arguments, 1);
return function() {
return fn.apply(null, args);
};
};
rvBinder = rivets.bind(document.body, {
model: {
selectedBook: function (book) {
alert("Selected book is " + book);
},
books: ["Asp.Net", "Javascript"]
}
});
</script>
Или альтернативный подход является обязательным событием
<body>
<div rv-each-book="books">
<a rv-cust-href="book">
Read the book {book}
</a>
</div>
</body>
<script type="text/javascript">
rivets.binders['cust-href'] = function (el, value) {
//el.href = '/Books/Find/' + value;
//OR
el.onclick = function() { alert(value); };
}
rvBinder = rivets.bind(document.body, {
books: ["Asp.Net", "Javascript"]
});
</script>
'с.в.-на-клик = "ABC ({}), что"' http://rivetsjs.com/docs/reference/# on- [event] Вам нужно прочитать, что такое 2-сторонняя привязка, и использовать документацию библиотеки привязки. – Pogrindis
Nope. Я определенно пробовал это, и он не работает. Дает эту ошибку: Непринятый TypeError: this.call не является функцией/t.public.handler @ rivets.bundled.min.js: 6/t.Binding.e.eventHandler @ rivets.bundled.min.js: 6/n .event.dispatch @ jquery-2.1.4.min.js: 3/n.event.add.r.handle @ jquery-2.1.4.min.js: 3 – paulwal222
Единственное работающее решение, которое я нашел, это использование функции, которая является членом {вещи}, что кажется мне смешным. Итак: 'rv-on-click =" thing.my_function "' – paulwal222