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