Не удается перенаправить страницу при выборе из выпадающего меню выбора

#javascript #jquery #html #redirect

#javascript #jquery #HTML #перенаправление

Вопрос:

Я использовал плагин jquery для выпадающего меню выбора с изображениями, там я хочу перенаправить страницу на определенный URL, указанный в значении параметра меню выбора.Но я не могу ее перенаправить. пожалуйста, укажите мне следующий код.

 <html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script type="text/javascript" src="jquery.ddslick.min.js">
</script>
</head>
<body>
<div id="myDropdown"></div>
<script type="text/javascript">
//Dropdown plugin data
var ddData = [
    {
        text: "Facebook",
        value: "http://www.facebook.com",
        description: "Description with Facebook",
        imageSrc: "http://dl.dropbox.com/u/40036711/Images/facebook-icon-32.png"
    },
    {
        text: "Twitter",
        value: "http://www.google.com",
        description: "Description with Twitter",
        imageSrc: "http://dl.dropbox.com/u/40036711/Images/twitter-icon-32.png"
    },
    {
        text: "LinkedIn",
        value: 3,
        description: "Description with LinkedIn",
        imageSrc: "http://dl.dropbox.com/u/40036711/Images/linkedin-icon-32.png"
    },
    {
        text: "Foursquare",
        value: 4,
        description: "Description with Foursquare",
        imageSrc: "http://dl.dropbox.com/u/40036711/Images/foursquare-icon-32.png"
    }
];
//Code Ends
//Code Starts
$('#myDropdown').ddslick({
    data:ddData,
    width:300,
    selectText: "Select your preferred social network",
    imagePosition:"right",
    onSelected: function(selectedData){

    }   
});
$(document).ready( function() {
   $('#myDropdown').change( function() {
      location.href = $(this).val();
   });
});


//Code Ends
</script>
</body>
</html>
  

Пожалуйста, помогите мне в этом..

Комментарии:

1. попробуйте это $('#myDropdown').ddslick({ data:ddData, width:300, selectText: "Select your preferred social network", imagePosition:"right", onSelected: function(selectedData){ location.href = $(this).val(); } });

Ответ №1:

Плагин ddslick заменяет ваш элемент выбора другими элементами, чтобы сделать выпадающий список скользким, поэтому вы не можете использовать событие изменения исходного выбора. Вместо этого вы должны использовать onSelected событие плагина:

 $('#myDropdown').ddslick({
    data:ddData,
    width:300,
    selectText: "Select your preferred social network",
    imagePosition:"right",
    onSelected: function(selectedData){
        location.href = selectedData.selectedData.value;
    }   
});
  

Комментарии:

1. Теперь, когда я выбираю facebook.его добавление слова undefined в URL, но я хочу, чтобы оно переходило на facebook.com и добавьте то же самое, пожалуйста, скажите мне, где я делаю неправильно…

2. Попробуйте добавить console.log(selectedData) функцию, чтобы посмотреть, что она содержит. Нажмите F12, чтобы увидеть консоль.

3. в консоли. при выборе любого параметра я получаю следующую ошибку: -Не удалось прочитать свойство ‘localStorage’ из ‘Window’: хранилище отключено внутри URL-адресов ‘data:’.

4. Смотрите мое редактирование, вам нужно использовать location.href = selectedData.selectedData.value; .

5. ya.sir.it сработало. не могли бы вы, пожалуйста, помочь мне с объяснением того, что вы исправили в коде, сэр..

Ответ №2:

Вот мое решение:

http://jsfiddle.net/HaCTg/5/

JS:

 $(document).ready( function() {
   $('#myDropdown .dd-option').click( function(e) {
      e.preventDefault();
      location.href = ($(this).children('.dd-option-value').val());
   });
});
  

Обратите внимание, что jsfiddle фактически не перенаправляет вас, но если вы измените:

 location.href = ($(this).children('.dd-option-value').val());
  

в:

 console.log($(this).children('.dd-option-value').val());
  

Вы увидите, что код работает.