2016-12-12 8 views
0

私は、4つのリンク(申請者、カバレッジ、ロケーション、プレミアム)を持つブートストラップナビゲーションタブを持っています。申請者のデータを検証するために、Coveragesのjqueryクリックイベントがあります。場合は失敗し、表示sweetalertと申請者]タブにとどまる:SweetAlert with Bootstrapナビゲーションタブ

$('#CoveragesTab').off('click').on('click', function (event) { 
    SaveApplicantTabData(function (retVal) { 
     if ("success" == retVal.status) { 
     } 
     else if ("failed" == retVal.status) { 
      event.stopImmediatePropagation(); 
      swal(retVal.message, "Applicant Error", "error"); 
      //alerta(retVal.message); 
      return false; 
     } 
     else if ("error" == retVal.status) { 
      event.stopImmediatePropagation(); 
      alert(retVal.message); 
      return false; 
     } 
    }); 
}); 

は機能的には、これは完璧に動作しますが、それはまだフォーカスを持っているようにカバレッジのリンクが見えます - タブの広場全体を超えるホバリングと同じハイライト表示されますタブ。それは焦点がありません。私は開発者のツールでチェックし、アクティブなリンクは他の値と同様に正しいです。

タブからフォーカスのある外観を削除するにはどうすればよいですか?

ありがとうございます。

答えて

0

あなたのCoveragesのナビゲーションタブのリンクにする場合、検証failesをblur()メソッドを追加することができます。

$('#CoveragesTab').off('click').on('click', function (event) { 
    SaveApplicantTabData(function (retVal) { 
     if ("success" == retVal.status) { 
     } 
     else if ("failed" == retVal.status) { 
      event.stopImmediatePropagation(); 
      swal(retVal.message, "Applicant Error", "error"); 
      //alerta(retVal.message); 
      $(this).blur(); 
      return false; 
     } 
     else if ("error" == retVal.status) { 
      event.stopImmediatePropagation(); 
      alert(retVal.message); 
      return false; 
     } 
    }); 
}); 
+0

これは機能しませんでした。私も$(this).focus()を試しました。運がない。でもありがとう! – FirstByte

+0

それは私のために働いた、私はこのyestredayを試してみました。 – makshh

+0

$( "#ApplicantLink")も試しました。addClass( 'active'); – FirstByte

0

を試行錯誤の多くの後、私はついにそれを考え出しました。 event.stopImmediatePropogationと.blur()の両方を使用する必要があります。

http://localhost:3858/CreateQuote/EditQuote/1#coverages-tab 

は、だから私は、URLから引用IDを取り除く必要があります:

$('#CoveragesTab').off('click').on('click', function (event) { 
    SaveApplicantTabData(function (retVal) { 
     if ("success" == retVal.status) { 
     } 
     else if ("failed" == retVal.status) { 
      event.stopImmediatePropagation(); 
      $('#CoveragesTab').blur(); 
      swal(retVal.message, "Applicant Error", "error"); 
      return false; 
     } 
     else if ("error" == retVal.status) { 
      event.stopImmediatePropagation(); 
      alert(retVal.message); 
      return false; 
     } 
    }); 
}); 

唯一のことは、あなたがstoppropogationを使用する場合、それはURLの一部としてのhrefを残していることです。

誰でもこのことを防ぐ方法を知っていますか?

ありがとうございます。

関連する問題