PDA

View Full Version : عمل نکردن رویداد onchange در تگ select



IMANAZADI
شنبه 24 آبان 1393, 12:45 عصر
با سلام


کد زیر رو ببینید




<input type="button" onClick="changeValue();">
<select id="test" onChange="ischange();">
<option value="a">a</option>
<option value="b">b</option>
<option value="c">c</option>
<option value="d">d</option>
</select>
</body>
<script>
function ischange()
{
alert('change');
}




function changeValue()
{
document.getElementById('test').selectedIndex=2;
}
</script>





چرا وقتی کاربر مقدار select رو تغییر میده رویداد onchange عمل میکنه و پیام alert نشون داده میشه ولی وقتی روی باتن کلیک میکنیم با اینکه مقدار select تغییر میکنه رویداد onchange عمل نمیکنه ؟؟؟؟
ایراد از چیست ؟؟
برای اینکه وقتی کسی با باتن مقدار select رو تغییر میده تابع onchange عمل کنه چه راه حل هایی هست ؟؟

IMANAZADI
شنبه 24 آبان 1393, 14:55 عصر
کسی نیست ؟؟؟

rambod18
شنبه 24 آبان 1393, 15:06 عصر
وقتی با جاوااسکریپت مقداری رو تغییر میدید معمولا رویدادها توی تگ تغییر داده شده کار نمی کنند.
برای اجرای تابع ischange() می تونید از کد این کد استفاده کنید:



function changeValue()
{
document.getElementById('test').selectedIndex=2;
ischange();
}
function ischange()
{
alert('change');
}