2012-01-30 85 views
1

我有一个asp.net程序,当我在文本框中的地址发生变化时,我在google地图上放置了一个标记。这个javascript是由'onchange'事件触发的。但是我注意到,如果用户在点击提交之前没有“标签”,事件不会触发。有没有办法解决这个问题?ASP.NET:onchange事件没有触发

+0

时你赢了?对每个用户点击? – Aristos 2012-01-30 00:29:38

+0

我希望它在文本被更改时触发,它在大多数情况下都能正常工作,问题在于当用户更改文本并立即单击提交按钮而不先单击此框时......它似乎忽略了触发事件。 – SHeinema 2012-01-30 00:37:38

+0

也许试试onblur,偶尔我会在另一个失败时取得成功。 – mikey 2012-01-30 00:41:09

回答

1

我认为你正在努力实现的是不可能的。 onchange事件,只有当你失去对元素的关注时才会发生。你可以使用onkeypress,onkeydown或onkeyup来更快地改变这个变化。这里的问题是,文本框的值将通过单击外部元素进行更改,因此您无法将其直接绑定到文本框。

如果您确切知道可点击的元素是什么,您可以为它们中的每一个添加一个点击事件,指向一个可以测试文本框当前值与最新已知值的函数,如果它们不同,请执行无论你想做什么。但我不认为是这样的话......

您的评论之后,你应该添加一个提交事件的形式,将提交表单之前比较文本框的当前状态......

+0

其实.......我知道可点击的元素,实际上只是提交按钮,所以我添加了一个调用另一个函数,检查确保字段已设置,如果不是,它从那里调用onchange fnc。谢谢 ( : – SHeinema 2012-01-30 00:46:33