کاربرد دستور preventDefault در Jquery چیست ؟
لطفا بفرمایید دستور preventDefault در دستورات جی کویری دقیقا چه کاری رو انجام میده ؟ مثلا چرا در دستور زیر استفاده شده ؟
$("#btnAdd").on('click', function(e){
e.preventDefault();
});
متد preventDefault وقتی استفاده میشه که می خواید یک المنت عملکرد ذاتی و پیش فرض خودش رو نداشته باشه. مثلا یک تگ a به طور پیش فرض و ذاتی یک لینک هست و باید دارای یک Url باشه. اما معمولا وقتی از دستورات JavaScript برای یک تگ a استفاده می کنیم مطمینا نمی خوایم با کلیک کردن روی اون لینک مستقیم به آدرس خاصی بریم و قبلش میخوایم مواردی رو چک کنیم پس از preventDefault استفاده می کنیم. مثال زیر رو دقت کنید:
<html>
<input type='text' id='txt' />
<a id='mybtn'>click me</a>
</html>
در مثال بالا یک تگ input داریم و یک تگ a. قصد داریم وقتی روی تگ a کلیک می کنیم قبل از هر چیز کنترل بشه که حتما در input مقداری وارد شده باشه :
<script>
$('#mybtn').on('click', function(e){
e.preventDefault();
if (txt.length == 0)
{
alert('length is zero !!!');
}
});
</script>
می بینید که در اینجا از preventDefault استفاده شده.
در تگ form یا دکمه submit و ... هم می تونید قبل از اینکه عملیات ذاتی اون تگ انجام بشه استفاده کنید.