Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   содержимое option value в span (https://javascript.ru/forum/misc/62517-soderzhimoe-option-value-v-span.html)

ultrahomie 14.04.2016 19:09

содержимое option value в span
 
Всем привет
Имеется селект
<select id="select" name="select">
<option value="1">город1/option>
<option value="2">город2</option>
<option value="3">город3</option>
</select>

и спан
<span id="gorod"></div>

При выборе определенного option value осуществляется его дальнейшая запись по кукам и отображение при обновлении страницы, с ним проблем нет

Но не получается значение выбранного option value передать в спан, он так же должен отображаться на страницах сайта при обновлении

скрипт
<script type="text/javascript" >
var select = document.getElementById('select');
select.onchange = function () {

    var date = new Date();
    date.setDate(date.getDate() + 7);
 
    document.cookie = 'select=' + select.value +'; path=/; expires=' + date.toUTCString();
 
}
</script>
<script>
function getCookie(name) {
    var matches = document.cookie.match(new RegExp(
            "(?:^|; )" + name.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g, '\\$1') + "=([^;]*)"
    ));
    return matches ? decodeURIComponent(matches[1]) : undefined;
}
 
var select = document.getElementById('select'),
cookie = getCookie('select');
 
if (cookie) {
    select.value = cookie;
}
</script>
<script type="text/javascript" >
function city() {
    var select = document.getElementById('select'),
        target = document.getElementById('gorod'),
        cities = ['1', '2', '3'];
    target.innerHTML = cities[select.value];
}



</script>

Помогите пожауйста

рони 14.04.2016 20:05

ultrahomie,
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">

</head>

<body><select id="select" name="select">
<option value="1">город1</option>
<option value="2">город2</option>
<option value="3">город3</option>
</select>
<span id="gorod"></span>
<script type="text/javascript" >
var select = document.getElementById('select');
select.onchange = function () {
    city();
    var date = new Date();
    date.setDate(date.getDate() + 7);

    document.cookie = 'select=' + select.value +'; path=/; expires=' + date.toUTCString();

}

function getCookie(name) {
    var matches = document.cookie.match(new RegExp(
            "(?:^|; )" + name.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g, '\\$1') + "=([^;]*)"
    ));
    return matches ? decodeURIComponent(matches[1]) : undefined;
}

var cookie = getCookie('select');

if (cookie) {
    select.value = cookie;

}

function city() {
    var target = document.getElementById('gorod'),
        cities = {'1':'город1', '2':'город2', '3':'город3'};
    target.innerHTML = cities[select.value];
}
city()


</script>


</body>
</html>

ultrahomie 14.04.2016 20:19

Цитата:

Сообщение от рони (Сообщение 414104)
ultrahomie,
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">

</head>

<body><select id="select" name="select">
<option value="1">город1</option>
<option value="2">город2</option>
<option value="3">город3</option>
</select>
<span id="gorod"></span>
<script type="text/javascript" >
var select = document.getElementById('select');
select.onchange = function () {
    city();
    var date = new Date();
    date.setDate(date.getDate() + 7);

    document.cookie = 'select=' + select.value +'; path=/; expires=' + date.toUTCString();

}

function getCookie(name) {
    var matches = document.cookie.match(new RegExp(
            "(?:^|; )" + name.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g, '\\$1') + "=([^;]*)"
    ));
    return matches ? decodeURIComponent(matches[1]) : undefined;
}

var cookie = getCookie('select');

if (cookie) {
    select.value = cookie;

}

function city() {
    var target = document.getElementById('gorod'),
        cities = {'1':'город1', '2':'город2', '3':'город3'};
    target.innerHTML = cities[select.value];
}
city()


</script>


</body>
</html>

большое спасибо, всё работает :thanks:


Часовой пояс GMT +3, время: 06:02.