2017-04-26 3 views
0

私は非常に基本的なスクリプト作成能力を超えた要求があります。 与えられたクラスのdivで番号を探し、値に基づいてdivを非表示/表示します

「John Doeのパスワードは、91日で期限が切れる」

私はこの文を評価し、いくつかのスクリプトを追加したい:私は自分のパスワードの有効期限が切れるまで、彼らが残した日数のユーザーに伝えるメッセージでウェブサイトを持っています

JS/jQueryを使用して静的な変更を行っていますが、それ以前は静的な変更は行っていません。ロジックのようなものなので、どこから始めるのか分からない。

ご協力いただければ幸いです。

+1

あなたのコードはどこですか? –

+0

どこから始めたらいいのか分からなかったので、私は哀れな試みでOPを捨てるべきではないと思った。 – Josh

+0

現在の「有効期限通知」セクションのマークアップを表示する必要があります。もしあなたがこの質問に答えられないなら、 –

答えて

0

警告は、おそらくメッセージのdiv内のテキストを解析するよりも、このついて行くために、より合理的な方法がありますが、これはそれを行います。

$(function(){ 
 
    var msg = $('#notice').text() 
 
    var days = msg.match(/\d+/)[0] 
 
    console.log(days) 
 
    if(Number(days) > 60) { 
 
    $('#notice').hide() 
 
    } 
 
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div id="notice">"John doe's password expires in 91 days"</div>

+0

美しい!これは魅力的でした! – Josh

0
function CheckExpiryNotice(maxNum) { 
    var expiryNoticeDiv = $('.expiryNotice'); 
    var expiryNoticeStr = expiryNoticeDiv.text(); 
    $(expiryNoticeStr.split(" ")).each(function(i,e) { 
    if($.isNumeric(e)) { 
     if(e > maxNum) { 
     expiryNoticeDiv.hide(); 
     } 
    } 
    }); 
} 

は、この関数を呼び出しますあなたがjQを使用したくない場合は、javascriptでこれを行うことができます。CheckExpiryNotice(60);

0

uery:

var elem = document.getElementsByClassName('expiryNotice'); 
    var str = elem[0].innerText; 
    var days = str.match(/\d+/)[0]; 
    if (+days > 60) { 
     elem[0].hidden = true; 
    }     
関連する問題