Javascript 更改a<;标签>;基于<;选择>;
我在JSP文件中有以下代码,我希望名为“complemento”的Javascript 更改a<;标签>;基于<;选择>;,javascript,html,jsp,Javascript,Html,Jsp,我在JSP文件中有以下代码,我希望名为“complemento”的的文本根据名为“tipo”的中选择的选项进行更改。javascript代码是否有任何错误,因为当我在浏览器中打开页面时,它无法按预期工作 <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transit
的文本根据名为“tipo”的
中选择的选项进行更改。javascript代码是否有任何错误,因为当我在浏览器中打开页面时,它无法按预期工作
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Cadastra Usuario</title>
<script>
function mudaTexto(tipo) {
var opcao_index = tipo.selectedIndex;
var opcao = tipo.options[opcao_index].value;
if(opcao == '0')
document.getElementById('complemento').innerHTML = 'Periodo';
else if(opcao == '1')
document.getElementById('complemento').innerHTML = 'Titulo';
else
document.getElementById('complemento').innerHTML = 'Status';
}
</script>
</head>
<body>
<p align="center">
<span class="usuario">${nome}</span> | <strong> Hora Livre</strong> | <a href="/hora_livre/ProcessaSaida"> Sair</a>
</p>
<p align="center">
<form method="post" action="/hora_livre/CadastraUsuario">
<table>
<tr>
<td>Login: </td> <td><input type="text" name="username"></td>
</tr>
<tr>
<td>Digite uma Senha: </td> <td><input type="password" name="password">
</td>
</tr>
<tr>
<td>Repita a Senha: </td> <td><input type="password" name="senha"></td>
</tr>
<tr>
<td>Tipo de usuario: </td>
<td>
<select name="tipo" onchange="mudatexto(this.form.tipo)">
<option value="0">Aluno</option>
<option value="1">Professor</option>
<option value="2">Funcionario</option>
</select>
</td>
</tr>
<tr>
<td>Nome Completo: </td> <td><input type="text" name="name"></td>
</tr>
<tr>
<td><label for="complemento">Periodo</label></script></label> </td>
<td> <input type="text" name="complemento"></td>
</tr>
<tr colspan=2>
<td><input type="submit" value="Enviar"></td>
</tr>
</table>
</form>
</p>
</body>
</html>
mudaTexto,不是mudaTexto。您必须正确拼写函数名。
JavaScript区分大小写
您的POST请求返回:
{
"ok": true,
"error": false
}
您也没有这样一个id的元素,只有名称
不要使用.innerHTML。这是价值
测试并运行。mudaTexto,而不是mudaTexto。您必须正确拼写函数名。
JavaScript区分大小写
您的POST请求返回:
{
"ok": true,
"error": false
}
您也没有这样一个id的元素,只有名称
不要使用.innerHTML。这是价值
测试并运行。mudaTexto,而不是mudaTexto。您必须正确拼写函数名。
JavaScript区分大小写
您的POST请求返回:
{
"ok": true,
"error": false
}
您也没有这样一个id的元素,只有名称
不要使用.innerHTML。这是价值
测试并运行。mudaTexto,而不是mudaTexto。您必须正确拼写函数名。
JavaScript区分大小写
您的POST请求返回:
{
"ok": true,
"error": false
}
您也没有这样一个id的元素,只有名称
不要使用.innerHTML。这是价值
测试并运行。您没有id=complemento的元素。通过将id添加到输入中来修复它
<td><label for="complemento">Periodo</label></script></label> </td> <td><input id="complemento" type="text" name="complemento"></td>
您没有id=complemento的元素。通过将id添加到输入中来修复它
<td><label for="complemento">Periodo</label></script></label> </td> <td><input id="complemento" type="text" name="complemento"></td>
您没有id=complemento的元素。通过将id添加到输入中来修复它
<td><label for="complemento">Periodo</label></script></label> </td> <td><input id="complemento" type="text" name="complemento"></td>
您没有id=complemento的元素。通过将id添加到输入中来修复它
<td><label for="complemento">Periodo</label></script></label> </td> <td><input id="complemento" type="text" name="complemento"></td>
正如安德烈所说
要更改其文本的标签的名称为complemento
,但您正在查找ID为complemento
的元素,因此它将不起作用
然后,函数名是区分大小写的,就像其他人说的那样,mudatexto
应该是mudatexto
,您试图访问tipo,就好像它定义了一个id属性,但它只有一个名称this.form.tipo
将不起作用,而是使用this.value
,那么您的tipo html将如下所示
<select name="tipo" onchange="mudaTexto(this.value)">
<option value="0">Aluno</option>
<option value="1">Professor</option>
<option value="2">Funcionario</option>
</select>
function mudaTexto(tipo) {
var opcao_index = tipo.selectedIndex;
var opcao = tipo.options[opcao_index].value;
if(opcao == '0'){
document.getElementsByName('complemento')[0].innerHTML = 'Periodo';
}else if(opcao == '1'){
document.getElementsByName('complemento')[0].innerHTML = 'Titulo';
}else{
document.getElementsByName('complemento')[0].innerHTML = 'Status';
}
}
还有,;您应该看看如何使用angularjs,它将消除使用javascript或jquery执行此类操作的任何需要。正如Andrei所说
要更改其文本的标签的名称为complemento
,但您正在查找ID为complemento
的元素,因此它将不起作用
然后,函数名是区分大小写的,就像其他人说的那样,mudatexto
应该是mudatexto
,您试图访问tipo,就好像它定义了一个id属性,但它只有一个名称this.form.tipo
将不起作用,而是使用this.value
,那么您的tipo html将如下所示
<select name="tipo" onchange="mudaTexto(this.value)">
<option value="0">Aluno</option>
<option value="1">Professor</option>
<option value="2">Funcionario</option>
</select>
function mudaTexto(tipo) {
var opcao_index = tipo.selectedIndex;
var opcao = tipo.options[opcao_index].value;
if(opcao == '0'){
document.getElementsByName('complemento')[0].innerHTML = 'Periodo';
}else if(opcao == '1'){
document.getElementsByName('complemento')[0].innerHTML = 'Titulo';
}else{
document.getElementsByName('complemento')[0].innerHTML = 'Status';
}
}
还有,;您应该看看如何使用angularjs,它将消除使用javascript或jquery执行此类操作的任何需要。正如Andrei所说
要更改其文本的标签的名称为complemento
,但您正在查找ID为complemento
的元素,因此它将不起作用
然后,函数名是区分大小写的,就像其他人说的那样,mudatexto
应该是mudatexto
,您试图访问tipo,就好像它定义了一个id属性,但它只有一个名称this.form.tipo
将不起作用,而是使用this.value
,那么您的tipo html将如下所示
<select name="tipo" onchange="mudaTexto(this.value)">
<option value="0">Aluno</option>
<option value="1">Professor</option>
<option value="2">Funcionario</option>
</select>
function mudaTexto(tipo) {
var opcao_index = tipo.selectedIndex;
var opcao = tipo.options[opcao_index].value;
if(opcao == '0'){
document.getElementsByName('complemento')[0].innerHTML = 'Periodo';
}else if(opcao == '1'){
document.getElementsByName('complemento')[0].innerHTML = 'Titulo';
}else{
document.getElementsByName('complemento')[0].innerHTML = 'Status';
}
}
还有,;您应该看看如何使用angularjs,它将消除使用javascript或jquery执行此类操作的任何需要。正如Andrei所说
要更改其文本的标签的名称为complemento
,但您正在查找ID为complemento
的元素,因此它将不起作用
然后,函数名是区分大小写的,就像其他人说的那样,mudatexto
应该是mudatexto
,您试图访问tipo,就好像它定义了一个id属性,但它只有一个名称this.form.tipo
将不起作用,而是使用this.value
,那么您的tipo html将如下所示
<select name="tipo" onchange="mudaTexto(this.value)">
<option value="0">Aluno</option>
<option value="1">Professor</option>
<option value="2">Funcionario</option>
</select>
function mudaTexto(tipo) {
var opcao_index = tipo.selectedIndex;
var opcao = tipo.options[opcao_index].value;
if(opcao == '0'){
document.getElementsByName('complemento')[0].innerHTML = 'Periodo';
}else if(opcao == '1'){
document.getElementsByName('complemento')[0].innerHTML = 'Titulo';
}else{
document.getElementsByName('complemento')[0].innerHTML = 'Status';
}
}
还有,;您应该看看如何使用angularjs,它将消除使用javascript或jquery执行此类操作的任何需要