2010-03-23 4 views
2

Я сейчас пытаюсь сделать следующее:Открыть mailto после щелчка в IE8/Chrome

Trigger: нажмите на имя в списке выбора.

Действие: откройте mailto-ссылку в текущем окне, открыв таким образом почтовый клиент.

$(document).ready(function(){  

// Define click-event 
$('option').click(function(){ 
    var mail = $(this).attr('value'); 
    window.open('mailto:'+mail, '_self'); 
    }); 

}); 

Я также попытался использовать это вместо window.open:

parent.location.href= 'mailto:'+mail;

Однако, оба работают только в Firefox, получить без ошибок/результатов в IE8 или Chrome.

Кто-нибудь знает, в чем проблема?

ответ

1

Как об этом (работает для меня на IE8)

$('option').change(function() { 
    var target = 'mailto:' + $('option:selected', this).text(); 
    window.location=target; 
}); 

Там, наверное, лучший способ сделать это, но я использую подобную вещь на одном из моих страниц.

Если адрес электронной почты можно сохранить как значение параметра выбора, используйте .val() вместо .text() в конце.

+0

Это почти работает, нужно изменить селектор опций, чтобы «выбрать», благодаря связке :) – Rakward

+0

Doh! Да, это должно быть имя select, а не опция. Извинения :) – odavy

+0

Кроме того, если вы помечаете свой вопрос тегом jQuery, вы можете получить еще некоторое внимание к нему ... – odavy