Estou tentando mudar um <iframe src=... >
quando alguém clica em um botão de rádio. Por algum motivo, meu código não está funcionando corretamente e estou tendo problemas para descobrir o porquê. Aqui está o que eu tenho:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<title>Untitled 1</title>
<script>
function go(loc) {
document.getElementById('calendar').src = loc;
}
</script>
</head>
<body>
<iframe id="calendar" src="about:blank" width="1000" height="450" frameborder="0" scrolling="no"></iframe>
<form method="post">
<input name="calendarSelection" type="radio" onselect="go('http://calendar.zoho.com/embed/9a6054c98fd2ad4047021cff76fee38773c34a35234fa42d426b9510864356a68cabcad57cbbb1a0?title=Kevin_Calendar&type=1&l=en&tz=America/Los_Angeles&sh=[0,0]&v=1')" />Day
<input name="calendarSelection" type="radio" onselect="go('http://calendar.zoho.com/embed/9a6054c98fd2ad4047021cff76fee38773c34a35234fa42d426b9510864356a68cabcad57cbbb1a0?title=Kevin_Calendar&type=1&l=en&tz=America/Los_Angeles&sh=[0,0]&v=1')" />Week
<input name="calendarSelection" type="radio" onselect="go('http://calendar.zoho.com/embed/9a6054c98fd2ad4047021cff76fee38773c34a35234fa42d426b9510864356a68cabcad57cbbb1a0?title=Kevin_Calendar&type=1&l=en&tz=America/Los_Angeles&sh=[0,0]&v=1')" />Month
</form>
</body>
</html>
javascript
iframe
src
Shinjuo
fonte
fonte
Respostas:
Neste caso, provavelmente é porque você está usando os colchetes errados aqui:
deveria estar
fonte
onselect
não é o atributo correto a ser usado aqui. Você pode querer usaronclick
- note que isso não irá disparar se o usuário usar o tecladoonchange
para isso.onclick
funcionar para ligar / desligar um botão de rádio, está tudo resolvido, ótimo!Talvez isso possa ser útil ... É html simples - sem javascript:
A propósito, alguns sites não permitem que você os abra no iframe (motivos de segurança - clickjacking)
fonte
Esta é a maneira jQuery de fazer isso:
fonte
O
onselect
deve seronclick
. Isso funcionará para usuários de teclado.Também recomendaria adicionar
<label>
tags ao texto "Dia", "Mês" e "Ano" para facilitar o clique. Código de exemplo:Também recomendo remover os espaços entre o atributo
onclick
e o valor, embora possam ser analisados pelos navegadores:Deveria estar:
fonte
Isso também deve funcionar, embora o
src
permaneça intacto:fonte
Aqui está meu código atualizado. Funciona bem e pode ajudá-lo.
fonte
mudar
onselect
paraonchange
nas entradas e usarExibir trecho de código
fonte
Você pode resolver isso criando o iframe em javascript
fonte