我在文本输入字段上使用.change时遇到了一些麻烦。它应该使用一个库(工匠),如果所说的答案是正确的(在这种情况下等于1),在画布上绘制文本,但它没有这样做。
这是javascript
$('#atomnum').change(function(){
ans = $('#atomnum').val();
});
if(ans == 1){
artisan.drawText('canvas', 200, 300, 'Correto!', '#FFFFFF');
}else{
return false;
}
输入的id是atomnum。有什么帮助吗?
编辑 - 尝试了那些机器人,仍然没有工作。 Here是调用的整个函数,也许çistener不应该在函数内部...
答案 0 :(得分:0)
如果绘图操作应该在.change()
事件中发生,请将其放入:
$('#atomnum').change(function(){
ans = $('#atomnum').val();
if(ans == 1){
artisan.drawText('canvas', 200, 300, 'Correto!', '#FFFFFF');
}else{
return false;
}
});
否则,您需要一个额外的功能来检查ans
的新值并相应地对其进行操作。
注意 - 删除了额外的结束}
答案 1 :(得分:0)
该代码无效。您可以在一次绑定事件后立即执行检查代码,而不是在元素更改时运行它。
请改为尝试:
$('#atomnum').change(function(e) {
var ans = $('#atomnum').val();
if(ans == '1') {
artisan.drawText('canvas', 200, 300, 'Correto!', '#FFFFFF');
}
else {
e.preventDefault();
}
});