HTML 敲除单选按钮以调用函数
HTML Knockout radio button to call function
I am using knockout to loop around an array to display a list of radio buttons with labels, and I want it so that whenever a radio button is selected it then calls function onInputChange
.
我当前的代码是:
<p data-bind="foreach:properties">
<br>
<input name="filter" type="radio" data-bind="checked:$root.sortType, event:$root.onInputChange">
<label for="filter" data-bind="text:id"></label>
<br>
</p>
你应该做下面的事情
<input name="filter" type="radio" data-bind="checked:$root.sortType, event: { change: $root.onInputChange}">
是这样的吗?
var model = function() {
var sortType = ko.observable("Two");
var properties = ko.observableArray([{id: "One"}, {id: "Two"}, {id: "Three"}]);
function onInputChange(item) {
alert("changed to: " + item.id);
}
return {
sortType: sortType,
properties: properties,
onInputChange: onInputChange
};
}
ko.applyBindings(model);
<script src="https://cdnjs.cloudflare.com/ajax/libs/knockout/3.2.0/knockout-min.js"></script>
<p data-bind="foreach:properties">
<br>
<input name="filter" type="radio"
data-bind="value: id,
checked:$parent.sortType,
event: {change : $parent.onInputChange }">
<label for="filter" data-bind="text:id"></label>
<br>
</p>
I am using knockout to loop around an array to display a list of radio buttons with labels, and I want it so that whenever a radio button is selected it then calls function onInputChange
.
我当前的代码是:
<p data-bind="foreach:properties">
<br>
<input name="filter" type="radio" data-bind="checked:$root.sortType, event:$root.onInputChange">
<label for="filter" data-bind="text:id"></label>
<br>
</p>
你应该做下面的事情
<input name="filter" type="radio" data-bind="checked:$root.sortType, event: { change: $root.onInputChange}">
是这样的吗?
var model = function() {
var sortType = ko.observable("Two");
var properties = ko.observableArray([{id: "One"}, {id: "Two"}, {id: "Three"}]);
function onInputChange(item) {
alert("changed to: " + item.id);
}
return {
sortType: sortType,
properties: properties,
onInputChange: onInputChange
};
}
ko.applyBindings(model);
<script src="https://cdnjs.cloudflare.com/ajax/libs/knockout/3.2.0/knockout-min.js"></script>
<p data-bind="foreach:properties">
<br>
<input name="filter" type="radio"
data-bind="value: id,
checked:$parent.sortType,
event: {change : $parent.onInputChange }">
<label for="filter" data-bind="text:id"></label>
<br>
</p>