Voglio aggiornare il valore del modello in JavaScript come di seguito, ma non funziona.Come aggiornare un valore del modello in JavaScript in una vista Razor?
function updatePostID(val)
{
@Model.addcomment.PostID = val;
}
in vista del rasoio come illustrato di seguito
foreach(var post in Model.Post)
{
<br/>
<b>Posted by :</b> @post.Username <br/>
<span>@post.Content</span> <br/>
if(Model.loginuser == Model.username)
{
@Html.TextAreaFor(model => model.addcomment.Content)
<button type="submit" onclick="updatePostID('@post.PostID');">Add Comment </button>
}
}
Qualcuno può dirmi come assegnare il valore del modello in JavaScript?
se uso l'estensione html nascosta nel foreach loop html generato è foreach post document.getElementById ('addcomment_PostID'). value = val; , quindi quale addcomment_PostID verrà aggiornato è point e non funzionante. lo ha messo fuori dal foreach e ha funzionato. Grazie. – michaeld
Dalla tua domanda non è chiaro come si desidera accedere al PostID. Se vengono generati più, dipende comunque da come li si vuole gestire, come una serie di controlli o come singoli. In quest'ultimo caso, dovrai utilizzare 'Html.Hidden (" PostID _ "+ @ post.PostID)'. È possibile passare questo alla funzione JavaScript. Ma posso dire che capisco perfettamente cosa stai cercando di fare. Non si presenteranno nel tuo modello poiché l'id/nome non sono noti in anticipo – codingbiz
mi sto aggiornando sul valore nel modello – michaeld