ورود

View Full Version : کار نکردن رویداد change در jquery



hamed II
یک شنبه 31 شهریور 1392, 17:49 عصر
سلام دوستان

نمیدونم چرا رویداد change به درستی کار نمیکنه مثلا در کد زیر


<html>
<head>
<script type="text/javascript" src="jquery-1.10.2.js"></script>
<script type="text/javascript">
$(document).ready(function () {
$('#tex').change(function(){

alert("test");

});
});
</script>
</head>
<body>
<input type="text" value="asa" id="tex"/>
</body>

</html>

وقتی یه متن درون تکس باکس تغییر میکه پیغام alert رو نشون نمیده ولی وقتی بیرون از تکس باکس کلیک میکنم تازه اون وقت پیغام رو نشون میده

اینم بگم که تو همه مرورگرا نتیجه یکیه

منتظر پاسختون هستم

Omid Jackson
یک شنبه 31 شهریور 1392, 18:47 عصر
سلام دوستان

نمیدونم چرا رویداد change به درستی کار نمیکنه مثلا در کد زیر


<html>
<head>
<script type="text/javascript" src="jquery-1.10.2.js"></script>
<script type="text/javascript">
$(document).ready(function () {
$('#tex').change(function(){

alert("test");

});
});
</script>
</head>
<body>
<input type="text" value="asa" id="tex"/>
</body>

</html>

وقتی یه متن درون تکس باکس تغییر میکه پیغام alert رو نشون نمیده ولی وقتی بیرون از تکس باکس کلیک میکنم تازه اون وقت پیغام رو نشون میده

اینم بگم که تو همه مرورگرا نتیجه یکیه

منتظر پاسختون هستم
به درستی کار میکنه
وقتی شما مقدار رو عوض کنین و تا موقعی که روش متمرکز هستین change کاری انجام نمیده ولی وقتی از تکست باکس به روی چیز دیگه متمرکز میشین این تازه عملیاتش رو انجام میده
کاراییش اینجوریه که وقتی focus میشه رو تکست باکس مقدار فعلیش رو میگیره و وقتی blur میشه از رو تکست باکس یک مقدار دیگه هم میگیره، اگر با هم برابر باشن عملیات داخلی change (که همون alert ) هست رو انجام نمیده ولی اگر با هم برابر نباشن عملیات انجام میشه
اگر شما میخواین هنگام تایپ کردن کاری انجام بده باید از keypress, keyup, keydown استفاده کنین
یکی از موارد بالا