none
Creando filas y columnas en visual studio RRS feed

  • Pregunta

  • Hola chicos!! Consulta

    Tengo una base de datos hecha con visual studio y sql server.

    Tengo el siguiente codigo donde me muestra los usuarios registrados en mi pagina

                                           

    @foreach (var usuario in Model)
        {


                   <table id="miTabla" width="350" height="1" border="1">

                <tr>
                    <td><h4><span style="color:#ffffff"><font face="Calibri">Nombre usuario</font></span></h4></td>
                    <td><h4><span style="color:#ffffff"><font face="Calibri">Correo</font></span></h4></td>
                    <td><h4><span style="color:#ffffff"><font face="Calibri">Clave usuario</font></span></h4></td>
                    <td><h4><span style="color:#ffffff"><font face="Calibri">Accion</font></span></h4></td>
                </tr>
                <tr>
                    <td><h5><span style="color:#ffffff"><font face="Calibri">@usuario.nombre</font></span></h5></td>

                    <td><h5><span style="color:#ffffff"><font face="Calibri">@usuario.mail</font></span></h5></td>

                    <td><h5><span style="color:#ffffff"><font face="Calibri">@usuario.pass</font></span></h5></td>

                    <td><h5><span style="color:#ffffff"><font face="Calibri"><a href="/home/editarUsuario?id=@usuario.id">Editar</a></font></span></h5></td>
                </tr>
            </table>

    Vean como me los muestra

    El problema, como podran ver en la imagen, es que se repiten los nombres de las columnas para cada valor o usuario (se repite nombre usuario,correo,clave usuario,accion)

    Solucion?

    lunes, 27 de junio de 2016 0:18

Respuestas

  • Hola Yan Eric Abramian,

    En realidad lo que debes tener fuera del foreach es el header, para que no se repita :

        <table id="miTabla" width="350" height="1" border="1">
              <thead>
                <tr>
                    <th><h4><span style="color:#ffffff"><font face="Calibri">Nombre usuario</font></span></h4></th>
                    <th><h4><span style="color:#ffffff"><font face="Calibri">Correo</font></span></h4></th>
                    <th><h4><span style="color:#ffffff"><font face="Calibri">Clave usuario</font></span></h4></th>
                    <th><h4><span style="color:#ffffff"><font face="Calibri">Accion</font></span></h4></th>
                </tr>
              </thead>
                @foreach (var usuario in Model)
                {
                    <tbody>
                        <tr>
                            <td><h5><span style="color:#ffffff"><font face="Calibri">@usuario.nombre</font></span></h5></td>
                            <td><h5><span style="color:#ffffff"><font face="Calibri">@usuario.mail</font></span></h5></td>
                            <td><h5><span style="color:#ffffff"><font face="Calibri">@usuario.pass</font></span></h5></td>
                            <td><h5><span style="color:#ffffff"><font face="Calibri"><a href="/home/editarUsuario?id=@usuario.id">Editar</a></font></span></h5></td>
                        </tr>
                    </tbody>
                 }
            </table>


    No has pensado en usar hojas de estilo? Porque eso de llenar los estilos en cada fila se ve muy mal.

    Además veo innecesario el uso de span y h4 dentro de las filas.

    Table - Estructura html5

    Saludos.


    JC NaupaCrispín
    Lima - Perú

    La magia no existe, la programación SI


    • Editado Joel C. Naupa Crispín lunes, 27 de junio de 2016 0:47 código con mala identación
    • Propuesto como respuesta Willams Morales lunes, 27 de junio de 2016 0:49
    • Marcado como respuesta Eric_96 lunes, 27 de junio de 2016 0:55
    lunes, 27 de junio de 2016 0:43

Todas las respuestas

  • Yan Eric Abramian,

    Fíjate que tienes dentro de la instrucción @foreach la creación de una tabla por cada elemento de la colección. La instrucción @foreach debería crear elementos <tr> (filas), no tablas:

    <table id="miTabla" width="350" height="1" border="1">
    	@foreach (var usuario in Model)
            {
    		<tr>
    			<td><h4><span style="color:#ffffff"><font face="Calibri">Nombre usuario</font></span></h4></td>
    			<td><h4><span style="color:#ffffff"><font face="Calibri">Correo</font></span></h4></td>
    			<td><h4><span style="color:#ffffff"><font face="Calibri">Clave usuario</font></span></h4></td>
    			<td><h4><span style="color:#ffffff"><font face="Calibri">Accion</font></span></h4></td>
    		</tr>
    		<tr>
    			<td><h5><span style="color:#ffffff"><font face="Calibri">@usuario.nombre</font></span></h5></td>
    
    			<td><h5><span style="color:#ffffff"><font face="Calibri">@usuario.mail</font></span></h5></td>
    
    			<td><h5><span style="color:#ffffff"><font face="Calibri">@usuario.pass</font></span></h5></td>
    
    			<td><h5><span style="color:#ffffff"><font face="Calibri"><a href="/home/editarUsuario?id=@usuario.id">Editar</a></font></span></h5></td>
    		</tr>
    	}            
    </table>

    lunes, 27 de junio de 2016 0:26
  • Hola Yan Eric Abramian,

    En realidad lo que debes tener fuera del foreach es el header, para que no se repita :

        <table id="miTabla" width="350" height="1" border="1">
              <thead>
                <tr>
                    <th><h4><span style="color:#ffffff"><font face="Calibri">Nombre usuario</font></span></h4></th>
                    <th><h4><span style="color:#ffffff"><font face="Calibri">Correo</font></span></h4></th>
                    <th><h4><span style="color:#ffffff"><font face="Calibri">Clave usuario</font></span></h4></th>
                    <th><h4><span style="color:#ffffff"><font face="Calibri">Accion</font></span></h4></th>
                </tr>
              </thead>
                @foreach (var usuario in Model)
                {
                    <tbody>
                        <tr>
                            <td><h5><span style="color:#ffffff"><font face="Calibri">@usuario.nombre</font></span></h5></td>
                            <td><h5><span style="color:#ffffff"><font face="Calibri">@usuario.mail</font></span></h5></td>
                            <td><h5><span style="color:#ffffff"><font face="Calibri">@usuario.pass</font></span></h5></td>
                            <td><h5><span style="color:#ffffff"><font face="Calibri"><a href="/home/editarUsuario?id=@usuario.id">Editar</a></font></span></h5></td>
                        </tr>
                    </tbody>
                 }
            </table>


    No has pensado en usar hojas de estilo? Porque eso de llenar los estilos en cada fila se ve muy mal.

    Además veo innecesario el uso de span y h4 dentro de las filas.

    Table - Estructura html5

    Saludos.


    JC NaupaCrispín
    Lima - Perú

    La magia no existe, la programación SI


    • Editado Joel C. Naupa Crispín lunes, 27 de junio de 2016 0:47 código con mala identación
    • Propuesto como respuesta Willams Morales lunes, 27 de junio de 2016 0:49
    • Marcado como respuesta Eric_96 lunes, 27 de junio de 2016 0:55
    lunes, 27 de junio de 2016 0:43
  • Yan Eric,

    Cierto!!! no había notado que precisamente el problema era las cabeceras, lo que propone Joel es el camino a seguir

    lunes, 27 de junio de 2016 0:51
  • Gracias !!
    lunes, 27 de junio de 2016 0:57