2010-11-13 3 views
0

Я хочу, чтобы браузер начинал с проверки наличия файла cookie с именем «да».Проверка на файл cookie при загрузке страницы

Если это так, я хочу отобразить сообщение.

Если нет, то я хочу, чтобы отобразить это:

<input type="button" id='approve' value="approve" onclick="a()"/> 
<input type="button" id='reject' value="reject" onclick="r()"/> 

Как этого добиться? Я хочу, чтобы это была клиентская сторона.

+0

Почему вы удалили код, который у вас уже был? И, полагаю, вы имеете в виду «дисплей» (второй раз) «вставить в DOM»? –

+0

Я думал, что мне станет легче понять ... я должен вернуть его? – ryan

+0

У меня есть Дежа вю. Я не думаю, что это связано с http://stackoverflow.com/q/4173586/393783? –

ответ

1

Быстрый и грязный способ использования document.write() inline. Допустим, есть предопределенная функция печенья геттер:

// taken from http://www.elated.com/articles/javascript-and-cookies/ 
function get_cookie (cookie_name){ 
    var results = document.cookie.match ('(^|;) ?' + cookie_name + '=([^;]*)(;|$)'); 
    if (results) 
    return (unescape (results[2])); 
    else 
    return null; 
} 

, а затем в вашем HTML где-то:

<div id="container"> 
    <script> 
    if (get_cookie("cookiename") == null){ 
     document.write("[cookie exists message]") 
    } else { 
     document.write('<input type="button" id='approve' value="approve" onclick="a()"/><input type="button" id='reject' value="reject" onclick="r()"/>') 
    } 
    </script> 
</div> 

Если вы хотите сделать после того, как страница была загружена:

function showit(){ 
    var myhtml; 
    if (get_cookie("cookiename") == null){ 
     myhtml = "some message"; 
    } else { 
     myhtml = '<input type="button" id='approve' value="approve" onclick="a()"/><input type="button" id='reject' value="reject" onclick="r()"/>' 
    } 
    document.getElementById("container").innerHTML = myhtml; 
} 
Смежные вопросы