我有2个输入框,两个都会在模糊事件上调用相同的功能,如下面的
<td>
<input id="txtDate1" data-bind="value:Date1, event: { blur: ValidateData }" />
</td>
<td>
<input id="txtDate2" data-bind="value: Date2, event: { blur: ValidateData }" />
</td>
在我的视图模型中,我创建了函数validateData
this.ValidateDate = function () {
var txtData = $('#txtDate1').val();
if (!valid_date(txtData )) {
alert("Date not valid");
$(this).focus();
};
对于此功能,我想在失去焦点时传递文本框的实际值。我的问题是我不知道传递给这个函数的值。
我怎样才能实现它?
答案 0 :(得分:2)
你很容易就可以这样做
data-bind="value:Date1, event: { blur: ValidateData.bind($data,Date1) }"
你的功能
this.ValidateDate = function (myval) {
// your code
};
答案 1 :(得分:1)
如果添加参数,则knockout将传递current model value
observable。在您的情况下,它将通过parent
和Date1
的{{1}}。您可以使用以下内容将Date2
与Date1
区分开来:
Date2
请参阅doc:
调用处理程序时,Knockout将提供当前模型值作为第一个参数