谁用DOM搜索变量名?

时间:2016-11-08 16:33:33

标签: javascript vb.net

我有这个代码,我需要知道如何使用" nombre"使用DOM查找数据的变量,这个应用程序在没有Jquery的情况下工作。

window.onload = function(e){ 
<%if(!faltanCampos.equals("")){%>alert("<%=faltanCampos%>")<%}%>
    //Ocultamos los vacios'
    var j, nombre
    i=<%=totalSig%>
    for (j=i-1;j > 0;j--){
        //nombre="txtsssiidenti" & j'
        nombre="txtissicodtui" + j        
        if (document.frmDatos.nombre.value==""){
            menos();
        }
    }
    actualizaNivel();
}

我将应用程序从vb翻译为js,vb代码:

Sub window_onload
<%if(!faltanCampos.equals("")){%>msgbox("<%=faltanCampos%>")<%}%>
    'Ocultamos los vacios'
    Dim j, nombre
    i=<%=totalSig%>
    for j=i-1 to 0 step -1
        'nombre="txtsssiidenti" & j'
        nombre="txtissicodtui" & j        
        if (document.all(nombre).value="") then
            menos()
        end if
    next
    actualizaNivel
End sub

FireBug错误:

  

TypeError:document.frmDatos.nombre未定义

HTML:

<title><%=GestorIdioma.getCadena("ARGES")%>&nbsp;-&nbsp;<%=GestorIdioma.getCadena("DESCRIARCHIVO")%></title>
</head>
<body onmouseover="defaultStatus='<%=GestorIdioma.getCadena("PIEPAGINA")%>'; return true;" >
<iframe name="frameResultado" id="frameResultado" width="0" height="0" src=""></iframe>
<!-- Menu -->
<%@ include file="../includeJSP/body_sitemap.inc" %>
<%@ include file="../includeJSP/camino.inc" %>
<%if(!Utilidades.dameElemHashtable(h,"EXPURGO").equals("S") && !Utilidades.dameElemHashtable(h,"TRANSFERENCIA").equals("S")){%>
<!-- Opciones auxiliares -->
<%@ include file="../includeJSP/OpcionesMant.inc" %>
<%}%>
<table width="100%" cellpadding="0" cellspacing="0" border="0">
    <tr>
        <td width="175" valign="top">
<form name="frmDatos" method="post" action="">
<!-- Los siguientes campos, aunque no aparecen en esta pestaña, los almacenamos aquí (ya que se heredan) -->
<input type="hidden" name="apartado" value="<%=apartado%>"/>
<input type="hidden" name="hacer" value="<%=hacer%>"/>
<input type="hidden" name="acceso" value="<%=acceso%>"/>
<input type="hidden" name="totalSig" value="<%=totalSig%>"/>
<input type="hidden" name="destino" value="signatura"/>
<input type="hidden" name="txtpsarcodarc" value="<%=Utilidades.dameElemHashtable(hotros,"txtpsarcodarc")%>"/>
<input type="hidden" name="txtpsarcodarcold" value="<%=Utilidades.dameElemHashtable(hotros,"txtpsarcodarcold")%>"/>
<input type="hidden" name="txtisarcodpro" value="<%=Utilidades.dameElemHashtable(hotros,"txtisarcodpro")%>"/>
<input type="hidden" name="masCodNivelA" value="<%=Utilidades.dameElemHashtable(h,"masCodNivelA")%>"/>
<input type="hidden" name="nivelArchivoAnterior" value="<%=Utilidades.dameElemHashtable(h,"masCodNivelA")%>"/>
<!-- Navegación Lateral -->
<%@ include file="../includeJSP/NavegaArea.inc" %>
        </td>
        <td valign="top">
        <p class="filareas">
            <span class="cmpeti"><%=GestorIdioma.getCadena("SIGNATURA")%></span>
        </p>
        <div class="grisclaro">     
        <p class="filacmp">     
                        <span class="inpuazul"><%= GestorIdioma.getCadena("TITULO")%>:&nbsp;</span>
                        <span class="cmpeti"><%=Utilidades.dameElemHashtable(hotros,"txtssartitulo",session.getAttribute("s54b.varidioma").toString())%></span>
        </p>
<%if(Utilidades.dameElemHashtable(h,"TRANSFERENCIA").equals("S")){%>
                <div class="grisclaro">
        <p class="filacmp">     
                        <span class="cmpeti"><%=GestorIdioma.getCadena("ENTRANSFERENCIA")%></span>
        </p>
                </div>
<%}
if(Utilidades.dameElemHashtable(h,"EXPURGO").equals("S")){%>
                <div class="grisclaro">
        <p class="filacmp">     
                        <span class="cmpeti"><%=GestorIdioma.getCadena("ENEXPURGO")%></span>
        </p>
                </div>
<%}%>
    <table border="0" width="100%" cellpadding="0" cellspacing="0">
    <tr id="trnivelArchivo">
    <td valign="top" colspan="2">
        <p class="filacmp">     
            <span class="inpuazul"><%=GestorIdioma.getCadena("NIVELARCHIVO")%>:</span>
            <select name="cboNivelA" class="inpuedi" onchange="javascrip:actualizaNivel()" <%=habilitado%> >
                <%  boolean carga=false;
                                    anterior=(!Utilidades.dameElemHashtable(h,"masCodNivelA").equals("")?Utilidades.dameElemHashtable(h,"masCodNivelA").toString():"");
                                    if(lnivelAr!=null){
                        for(i=0;i<lnivelAr.size();i++){
                                            carga=false;
                            hvalores = (Hashtable)lnivelAr.get(i);
                                            //Comprobamos permisos
                                            if(hvalores.get("RECODRAR").equals("10") && per.damePermiso("MARO",request,response)){
                                                carga=true;
                                            }else if(hvalores.get("RECODRAR").equals("20") && per.damePermiso("MARD",request,response)){
                                                carga=true;
                                            }else if(hvalores.get("RECODRAR").equals("30") && per.damePermiso("MARG",request,response)){
                                                carga=true;
                                            }else if(hvalores.get("RECODRAR").equals("40") && per.damePermiso("MARH",request,response)){
                                                carga=true;
                                            }else if(hvalores.get("RECODRAR").equals("25") && per.damePermiso("MARC",request,response)){
                                                carga=true;
                                            }
                                            if(carga){
                                                if(hvalores.get("RECODRAR").equals(anterior)){
                %>
                    <option class="inpuedi" value="<%=hvalores.get("RECODRAR")%>" selected="selected"><%=hvalores.get("REDESCRI")%></option>
                <%              }else{%>
                    <option class="inpuedi" value="<%=hvalores.get("RECODRAR")%>"><%=hvalores.get("REDESCRI")%></option>
                <%              }
                                            }
                        }
                    }else{%>
                    <option class="inpuedi" value="" selected>&nbsp;</option>
                <%  }%>
            </select>
        </p>
                </td></tr>
<%
String letras = "";
int numero = 0;
if(lclavesUI!=null){
    for(i=0;i<lclavesUI.size();i++){
        hvalores= new Hashtable();
        hvalores = (Hashtable)lclavesUI.get(i);
        letras = Utilidades.dameElemHashtable(hvalores,"letras");
        numero  = Utilidades.esNumero(Utilidades.dameElemHashtable(hvalores,"numero"))?Integer.parseInt(Utilidades.dameElemHashtable(hvalores,"numero")):0;        
    }
}
for(j=0;j<Integer.parseInt(totalSig);j++){
    //Si no hay SIIDENTI, ponemos una por defecto
    if(Utilidades.dameElemHashtable(h,"txtsssiidenti" + j).equals("")) {
        numero++;
        h.put("txtsssiidenti" + j,Utilidades.formateaNumCaja(letras,numero,true));
    }
%>
<tr id="tipoUI<%=j%>"><td valign="top">
<hr/>
<input type="hidden" name="masUIvalida<%=j%>" value="<%=Utilidades.dameElemHashtable(h,"masUIvalida" + j).equals("")?"S":Utilidades.dameElemHashtable(h,"masUIvalida" + j)%>"/>
<input type="hidden" name="masUIdeposito<%=j%>" value="<%=Utilidades.dameElemHashtable(h,"masUIdeposito" + j)%>"/>
<input type="hidden" name="txtissicodtui<%=j%>" value="<%=Utilidades.dameElemHashtable(h,"txtissicodtui" + j)%>"/>
<input type="hidden" name="masUnDescri<%=j%>" value="<%=Utilidades.dameElemHashtable(h,"masUnDescri" + j)%>"/>
<input type="hidden" name="masUnMetros<%=j%>" value="<%=Utilidades.dameElemHashtable(h,"masUnMetros" + j)%>"/>
        <p class="filacmp">     
            <span class="cmpeti"><%=GestorIdioma.getCadena("TIPOUI")%>:</span>
            <select name="cboTipoUI<%=j%>" class="inpuedi" onchange="javascript:actualizaTipo('<%=j%>')" <%=habilitado%> >
<option class="inpuedi" value="" selected="selected">&nbsp;</option>
                <%anterior=Utilidades.dameElemHashtable(h,"txtissicodtui" + j);
                                    if(ltipoui!=null){
                        for(i=0;i<ltipoui.size();i++){
                            hvalores = (Hashtable)ltipoui.get(i);
                            if(hvalores.get("UNCODTUI").equals(anterior)){
                %>
                    <option class="inpuedi" value="<%=hvalores.get("UNCODTUI")%>~<%=Utilidades.dameElemHashtable(hvalores,"UNMETROS")%>" selected="selected"><%=hvalores.get("UNDESCRI")%>&nbsp;-&nbsp;<%if ((Utilidades.dameElemHashtable(hvalores,"UNMETROS").substring(0,1)).equals(".")) {%>0<%=Utilidades.dameElemHashtable(hvalores,"UNMETROS").replace('.',',')%><%}else{%><%=Utilidades.dameElemHashtable(hvalores,"UNMETROS").replace('.',',')%><%}%>&nbsp;m.</option>
                <%          }else{%>
                    <option class="inpuedi" value="<%=hvalores.get("UNCODTUI")%>~<%=Utilidades.dameElemHashtable(hvalores,"UNMETROS")%>"><%=hvalores.get("UNDESCRI")%>&nbsp;-&nbsp;<%if ((Utilidades.dameElemHashtable(hvalores,"UNMETROS").substring(0,1)).equals(".")) {%>0<%=Utilidades.dameElemHashtable(hvalores,"UNMETROS").replace('.',',')%><%}else{%><%=Utilidades.dameElemHashtable(hvalores,"UNMETROS").replace('.',',')%><%}%>&nbsp;m.</option>
                <%          }
                        }
                    }else{%>
                    <option class="inpuedi" value="" selected="selected">&nbsp;</option>
                <%  }%>
            </select>
            &nbsp;-&nbsp;<span class="cmpeti"><%=GestorIdioma.getCadena("IDENCAJA")%>:</span>
            <input type="text" class="inpuedi" name="txtsssiidenti<%=j%>" size="30" value="<%=Utilidades.formateaNumCaja(Utilidades.dameElemHashtable(h,"txtsssiidenti" + j),0,true, "mostrar")%>" maxlength="15"  onblur="javascript:formateaUI(this,'<%=GestorIdioma.getCadena("FORMATOUI")%>');" <%=soloLectura%>/>

        </p>
</td>
<td valign="top" align="right">
<hr/>
        <p class="filacmp">
<%if(!Utilidades.dameElemHashtable(h,"EXPURGO").equals("S") && !Utilidades.dameElemHashtable(h,"TRANSFERENCIA").equals("S")){%>
            <input type="button" name="btnBorrar" class="boton" value="<%=GestorIdioma.getCadena("BORRAR")%>" onclick="javascript:BorraDatos('<%=j%>');"/>
<%}%>
                </p>
</td>
</tr>
<tr id="iden<%=j%>"><td valign="top" colspan="2">
        <p class="filacmp">     
            <span class="cmpeti"><%=GestorIdioma.getCadena("IDENEXPUI")%>:</span>
            <input type="text" class="inpuedi" name="txtsssiexpide<%=j%>" size="10" value="<%=Utilidades.dameElemHashtable(h,"txtsssiexpide" + j)%>" maxlength="3"  onKeyPress="javascript:funValidarNumero();" onblur="javascript:formateaNumero(this);" <%=soloLectura%> />
        </p>
</td></tr>
<tr id="deposito<%=j%>"><td valign="top" colspan="2">
<input type="hidden" name="txtissicodrsg<%=j%>" value="<%=Utilidades.dameElemHashtable(h,"txtissicodrsg" + j)%>"/>
<input type="hidden" name="mastamdep<%=j%>" value="<%=Utilidades.dameElemHashtable(h,"mastamdep" + j)%>"/>
<input type="hidden" name="masgesaut<%=j%>" value="<%=Utilidades.dameElemHashtable(h,"masgesaut" + j)%>"/>
    <p class="filacmp">     
    <span class="cmpeti"><%=GestorIdioma.getCadena("DEPOSITO")%>:</span>
    <input type="text" class="inpuedi" name="masDBreve<%=j%>" size="30" value="<%=encodeHTML(Utilidades.dameElemHashtable(h,"masDBreve" + j))%>" readonly="readonly"/>
    <input type="text" class="inpuedi" name="masDDescri<%=j%>" size="40" value="<%=encodeHTML(Utilidades.dameElemHashtable(h,"masDDescri" + j))%>" readonly="readonly"/>
<%if(!Utilidades.dameElemHashtable(h,"EXPURGO").equals("S") && !Utilidades.dameElemHashtable(h,"TRANSFERENCIA").equals("S")){%>
    <input type="button" name="btnCodClas" class="boton" value="..." onclick="javascript:SelDepconEspacio('DISPONIBILIDAD',document.frmDatos.txtissicodrsg<%=j%>.value,'<%=j%>')" />
    <input type="button" name="btnCodClasT" class="boton" value="<%=GestorIdioma.getCadena("TODOS")%>" onclick="javascript:SeleccionarComponente('DISPONIBILIDAD',document.frmDatos.txtissicodrsg<%=j%>.value,'<%=j%>')"/>
<%}%>
    </p>
</td>
</tr>
<tr id="idendeposito<%=j%>"><td valign="top" colspan="2">
        <p class="filacmp">     
            <span class="cmpeti"><%=GestorIdioma.getCadena("CODUBICACION")%>:</span>
                        <input type="text" class="inpuedi" name="txtsnsirsgide<%=j%>" size="30" value="<%=Utilidades.dameElemHashtable(h,"txtsnsirsgide" + j)%>" <%=soloLectura%>/>
                </p>
</td></tr>
<tr id="obser<%=j%>"><td valign="top" colspan="2">
        <p class="filacmp">     
            <span class="cmpeti"><%=GestorIdioma.getCadena("OBSERVACIONES")%>:</span><br />
                        <textarea  name="txtsnsiobserv<%=j%>" rows="4" cols="65"  <%=soloLectura%> ><%=Utilidades.dameElemHashtable(h,"txtsnsiobserv" + j)%></textarea>
        </p>
<div class="grisclaro bordeuskera" >                
        <p class="filareas">
            <span class="cmpeti"><%=GestorIdioma.getCadena("SIGNATURA")%></span>&nbsp;&nbsp;&nbsp;<span class="cmpetirojo">*<%=GestorIdioma.getCadena("DATOSEUSKERA")%></span>
        </p>
        <div class="grisclaro">             
        <p class="filacmp">     
            <span class="cmpeti"><%=GestorIdioma.getCadena("OBSERVACIONES")%>:</span><br />
                        <textarea  name="txtsnsiobserv<%=j%>_e" rows="4" cols="65" <%=soloLectura%> ><%=Utilidades.dameElemHashtable(h,"txtsnsiobserv" + j+"_e")%></textarea>
        </p>
        </div>
</div>
</td></tr>
<%}%>
                </table>
                                </div>
                </td></tr>
</table>
                <%if(!Utilidades.dameElemHashtable(h,"EXPURGO").equals("S") && !Utilidades.dameElemHashtable(h,"TRANSFERENCIA").equals("S")){%>
<!-- Opciones auxiliares -->
<%@ include file="../includeJSP/OpcionesMant.inc" %>
<%}%>
</form>
</body>
</html>

1 个答案:

答案 0 :(得分:0)

最后我找到了解决方案

   window.onload = function(e){ 
<%if(!faltanCampos.equals("")){%>alert("<%=faltanCampos%>")<%}%>
    //Ocultamos los vacios'
    var j, nombre
    i=<%=totalSig%>
    for (j=i-1;j > 0;j--){            
        nombre="txtissicodtui" + j                     
        if ( document.getElementsByName(nombre)[0].value == ""){
            menos();
        }
    }
    actualizaNivel();
}