Casella di controllo si trasforma in input di testo ASP.NET core

voti
1

Stavo tentando di fare due caselle di controllo in una pagina ASP.NET cshtml Nucleo in questo modo:

    <div class=checkbox>
        <input asp-for=IsDesktop />
        <label asp-for=IsDesktop>Desktop page</label>
    </div>

    <div class=checkbox>
        <input asp-for=IsPhone />
        <label asp-for=IsPhone>Phone page</label>
    </div>

Questo codice produce due risultati diversi! Un type = text, e uno type = checkbox (vedi foto)

Entrambe le colonne del database sono di tipo bit (1 o 0 per vero o falso).

Ciò che rende uno di questi ingressi vanno come un input di testo?

È pubblicato 06/01/2017 alle 17:12
fonte dall'utente
In altre lingue...                            


2 risposte

voti
0

L'attributo asp-per riguarda il tag al modello, che aiuta asp.net dedurre il tipo di ingresso html da utilizzare.

http://www.davepaquette.com/archive/2015/05/13/mvc6-input-tag-helper-deep-dive.aspx

Risposto il 06/01/2017 a 17:23
fonte dall'utente

voti
0

Risposta: Dal commento di Joe Audette, ho scoperto che il modello ha mostrato un tipo di dati come "bool?" e un altro come "bool".

Al fine di rendere questi sia in caselle, ho dovuto fare le colonne del database di nullable e rigenerare i miei modelli, al fine di renderli "bool?".

Risposto il 06/01/2017 a 18:47
fonte dall'utente

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more