2016-05-03 3 views
0

設定されている場合にユーザーがhrefを変更できるようにするポップアップがあります。設定されていない場合は、フィールドタイトルとして「オプションのWebリンク」を表示します。しかし、hrefがnullの「if」行でJavaScriptエラーが発生しています。どうやってhrefを取得したり、エラーを起こさずにテストしたりできますか?このアプリケーションでは、hrefがnullになるので、何とか処理するためにスクリプトが必要です。nullのときのhref getElementByIdでのJavascriptエラー

if (document.getElementById('sidebarhref-'+id).href == '') { 
    var href = document.getElementById('sidebarhref-'+id).href; 
} else { 
    var href = 'optional web link'; 
} 
+0

のdocument.getElementById( 'sidebarhref - ' + ID).ATTR( "HREF") –

+0

@マイクなし、それは間違っています。あなたはjQueryを考えていますが、OPはそれを使用していません。 – Pointy

+0

@Mike - 'null'は' attr'メソッドを持たず、HTMLElementオブジェクトも持っていません。要素が存在するときにエラーをスローするのではなく、**常に**エラーをスローします。 – Quentin

答えて

2

getElementByIdの戻り値がtrueの値で、そのプロパティにアクセスしようとするかどうかをテストします。

var element = document.getElementById('sidebarhref-'+id); 
if (element && element.href === "") { 
// etc 
+0

ありがとう!次のように更新してください: 'var要素= document.getElementById( 'sidebarhref - ' + id); if(element && element.href!= ''){ var href = element.href; else { var href = 'オプションのWebリンク'; } ' – Airman

関連する問題