2010-08-11 7 views
5

Wenn ich eine Form HTML-Hilfsmethode in einer meiner Ansichten wie <%=Html.Hidden("id", "some id text") %> verwende, erstellt es ein verstecktes Eingabefeld für mich, aber es bringt den falschen Wert drin.Html.Hidden() falschen Wert einfügen

Statt

<input name="id" type="hidden" value="some id text"/>

immer ich

<input name="id" type="hidden" value="11000"/>

So wird der Wert von woanders gefunden wird. In diesem Fall ist es die primäre ID des übergeordneten Datensatzes. Es ist also eine ID, es ist nur die falsche ID.

Hat jemand irgendwelche Ideen? Ich bin mir ziemlich sicher, dass dies nicht

+1

Sind Sie sicher, dass der Wert tatsächlich in dem hTML-Code das sind, oder sind dass der Wert, den du zurück bekommst in Ihrem Controller nach einem Post? Es gibt eine Erklärung für Letzteres, aber wenn es Ersteres ist, ergibt es keinen Sinn. – jwsample

+0

Ja, es ist die letztere Erklärung. Die Controller-Aktion hat tatsächlich einen ID-Parameter, der den Wert 11000 erhält. Was ist die Erklärung? – Jero

+0

Zeigen Sie die Quelle auf der generierten Seite an. Stellen Sie sicher, dass das ausgeblendete Feld den richtigen Wert hat. Wenn es den richtigen Wert hat, haben Sie ein anderes Eingabefeld mit dem Namen "id", das dieses überschreibt. Sie müssen nur die Felder dekonstruieren. – jwsample

Antwort

0

in MVC1 geschehen habe ich kann, was über folgende Optionen

  1. Wert, den Sie zu der Ansicht sind vorbei falsch ist, zum Beispiel. gebenen Daten (Sie können in der Steuerung überprüfen Debuggen anzuzeigen, um zu sehen, was Sie
  2. Sie verwenden Viewdata und TempData Daten mit unterschiedlichen Werten in sie vorbei, die

sonst hier Ihren Code eingeben wir alle so setzen Sie sich bitte außer Kraft gesetzt werden kann sehen, was

falsch ist
Verwandte Themen