Ich habe ein Formular mit zwei Schaltflächen senden in meiner asp.net mvc (C#) -Anwendung. Wenn ich auf eine Senden-Schaltfläche in Google Chrome
klicke, ist der Wert der Übermittlungsschaltfläche standardmäßig der Wert der ersten Übermittlungsschaltfläche. Hiermit zwei Senden von Schaltflächen in Form eines einzigen Formulars
ist die html:
<input type="submit" value="Send" name="SendEmail" />
<input type="submit" value="Save As Draft" name="SendEmail" />
<input type="button" value="Cancel" />
Wenn ich Sie auf die Schaltfläche Save As Draft
, in der Wirkung der Steuerung, es wird auf „Senden“ als Wert für SendEmail
. Hier
ist die Aktion:
public ActionResult SendEmail(string SendEmail, FormCollection form)
{
if(SendEmail == "Send")
{
//Send Email
}
else
{
//Save as draft
}
return RedirectToAction("SendEmailSuccess");
}
Wenn ich den Wert von Formcollection erhalten, zeigt es auf „Senden“. d. h. form["SendEmail"]
gibt Send
Was kann das Problem oder die Arbeit um mich tun müssen, um den tatsächlichen Wert der angeklickt senden Schaltfläche zu erhalten?
Ihr Code sieht gut aus, sollte diese Technik funktioniert. Könnte versuchen, den HTTP-POST zu überprüfen, um zu sehen, was genau an den Server zurückgesendet wird. – DavGarcia
Es passiert nur in Google Chrome, aber in IE und Firefox funktioniert es gut. – Prasad
Was ist mit Chrome ?! – Ted