Estoy intentando cambiar un <iframe src=... >
cuando alguien hace clic en un botón de opción. Por alguna razón, mi código no funciona correctamente y tengo problemas para averiguar por qué. Esto es lo que tengo:
<!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
fuente
fuente
Respuestas:
En este caso, probablemente se deba a que está usando los corchetes incorrectos aquí:
debiera ser
fuente
onselect
no es el atributo correcto para usar aquí. Es posible que desee usaronclick
, aunque tenga en cuenta que eso no se activará si el usuario usa su tecladoonchange
para eso.onclick
funciona para encender / apagar un botón de radio, entonces todo está resuelto, ¡genial!Quizás esto pueda ser útil ... Es html simple, sin javascript:
Por cierto, algunos sitios no le permiten abrirlos en iframe (razones de seguridad: clickjacking)
fuente
Aquí está la forma jQuery de hacerlo:
fuente
El
onselect
debe haberonclick
. Esto funcionará para usuarios de teclado.También recomendaría agregar
<label>
etiquetas al texto de "Día", "Mes" y "Año" para que sea más fácil hacer clic en ellos. Código de ejemplo:También recomendaría eliminar los espacios entre el atributo
onclick
y el valor, aunque los navegadores pueden analizarlo:Debiera ser:
fuente
Esto también debería funcionar, aunque
src
permanecerá intacto:fuente
Aquí está mi código actualizado. Funciona bien y puede ayudarte.
fuente
cambiar
onselect
aonchange
en insumos y usoMostrar fragmento de código
fuente
Puedes resolverlo haciendo el iframe en javascript
fuente