我看过以前的文章,但它们似乎已经更新了,而且我已经碰到了一堵砖墙。任何人都可以帮我找到解决方案吗?
我的指令有一些事件bind
。它是一个信用卡号码过滤器,因此它每4个数字添加一个空格,以便于阅读。我试图在karma / jasmine中测试它,通过输入数字5555555555554444
,并期望$viewValue
5555 5555 5555 4444
的响应,但无法找到触发事件的方法火。
我已经尝试了$setViewValue
,$render()
,$digest()
,我尝试了StackOverflow的一些解决方案(超过一年),但它们似乎无法正常工作
是使用jQuery的唯一解决方案吗?如果是这样,那jQuery解决方案仍然有效吗?我一直在尝试这样做而不将jQuery包含在我的单元测试中。
我正在使用的代码示例:
elem.bind('keypress', parseKeyPress);
elem.bind('keydown contextmenu', parseKeyDown);
elem.bind('cut paste', parseCutPaste);
var parseHandler= function (value) {
return value ? returnNumbersOnly(value) : '';
};
ctrl.$parsers.unshift(parseHandler);
ctrl.$formatters.unshift(parseHandler);
思想?
答案 0 :(得分:1)
您应该使用elem.trigger(...)
根据需要发出这些事件。