Je commence juste à explorer asp mvc et jquery.JQuery Popup du contrôleur MVC
J'ai un formulaire simple qui a 2 champs, une date et un montant.
Le comportement que j'essaye de réaliser est que quand le formulaire est soumis, si l'enregistrement n'existe pas déjà dans ma base de données alors ajoutez l'article. Si cela existe déjà, avertissez et demandez à l'utilisateur de confirmer. Si l'utilisateur continue, remplacez l'enregistrement existant.
Voici mon Majoration
<% using (Html.BeginForm())
{ %>
<div>
<%:Html.LabelFor(mod => Model.bal.Date) %>
</div>
<div>
<%: Html.TextBoxFor(mod => Model.bal.Date)%>
<%:Html.ValidationMessageFor(mod => Model.bal.Date)%>
</div>
<div>
<%: Html.LabelFor(mod => Model.bal.Amount)%>
</div>
<div>
<%: Html.TextBoxFor(mod => Model.bal.Amount)%>
<%: Html.ValidationMessageFor(mod => Model.bal.Amount)%>
</div>
<p>
<input type="submit" value="Create" />
Et voici mon code du contrôleur
[HttpPost]
public ActionResult Index(Balance bal)
{
var dataContext = new DataDataContext();
if (ModelState.IsValid)
{
// Check if exsists
if (dataContext.Balances.ToList().Contains(bal, new BalanceEquality()))
{
//Exsists, Warn then edit
// Add code here to open popup
// if Continue then over write exsisting data in db
}
else
{
//Not exsist, insert
dataContext.Balances.InsertOnSubmit(bal);
dataContext.SubmitChanges();
}
}
compModel myModel = new compModel();
myModel.bal = bal;
myModel.allBalances = dataContext.Balances.OrderBy(ball => ball.Date).ToList();
return View(myModel);
}
Le problème que j'ai est comment afficher et d'obtenir les résultats d'une Jquery Popup à partir de mon contrôleur.
Je pensais que sur la définition d'une variable dans la collection ViewData, mais cela ne semblait pas comme « meilleure pratique » pour me
Merci
peut-être utiliser un formulaire ajax ici - vous ne voulez pas être soumettre le formulaire, montrant alors une confirmation (côté client), puis à nouveau soumettre. pauvre UX IMO. aussi, comment un enregistrement peut-il déjà "exister"? Quels champs sont uniques? – RPM1984
Cherchez-vous une solution AJAX à ceci, ou voulez-vous soumettre le formulaire deux fois - d'abord soumettez-le vérifie l'unicité, s'il est unique il va de l'avant et crée l'enregistrement, sinon il réaffiche le formulaire avec le message d'avertissement, si l'utilisateur soumet la deuxième fois qu'il crée l'enregistrement. – ace
concernant le popup, vous pouvez regarder ici http://mrgsp.md:8080/awesome/popupformdemo – Omu