12 of 17 menu

Хатои манъ кардани гузариш дар JavaScript

Бигзор мо як истинод дошта бошем:

<a href="">link</a>

Истиноди худро дар тағирёбанда гирем:

let link = document.querySelector('a');

Ба истиноди худ як коркарди клик мебандем. Дар ин ҳол гузаришро бо истинод бекор мекунем, то аз боркунии саҳифа ҷилавгири кунем:

link.addEventListener('click', function(event) { console.log(this.textContent); event.preventDefault(); });

Чунин ба назар мерасад, ки мо пурра худро аз рафтори ногаҳонӣ эмин кардем. Дар асл ин чунин нест. Масала ин аст, ки вақте хатои синтаксӣ рӯй медиҳад, рамзи JavaScript танҳо иҷро намешавад, бастани истинод амал намекунад, ва гузариш ба он ба амал меояд.

Дар ин ҳол мо на натиҷаи иҷрои рамз, на хаторо дар консол хоҳем дид, зеро саҳифа аз нав бор мешавад. Биёед амалан хато дар рамз созем ва боварӣ ҳосил кунем:

link.addEventListener('click', function(event) { thiss.textContent = 'text'; // хатои синтаксӣ event.preventDefault(); });

Ин мушкилият аломати хоси худро дорад: агар дар лаҳзаи клик кардан ба истинод ба консол нигарем, мо ба як лаҳза хатои сурхро дар консол мебинем, ки қариб фавран нопадид мешавад.

Албатта, мо вақти хондани матни хаторо нахоҳем дошт, ки ин ҷустуҷӯи онро ба таври назаррас душвор мекунад. Аммо, як усули зирак ҳаст. Мо бояд дар href истинод аломати # гузорем. Дар ин ҳол гузариш бо истинод рух намедиҳад ва мо хатои партофташударо дар консол хоҳем дид:

<a href="#">link</a>
Тоҷикӣ
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Мо барои коркарди сомона, таҳлил ва шахсӣ кардан аз cookie истифода мебарем. Коркарди маълумот мувофиқи Сиёсати махфият сурат мегирад.
ҳамаро қабул кардан танзим кардан рад кардан