L-Wert erwartet wird javascript
Ich verwendet, MVC4 ,ich will das festlegen von Werten in der Eigenschaft des Modells verwendet Javascript
Ich habe versucht, diesen code
function updateTotals() {
debugger;
var academicAchievement = $('#AcademicAchievement').val();
var academicGrowth = $('#AcademicGrowth').val();
var academicGrowthGaps = $('#AcademicGrowthGaps').val();
var postsecondarAndWorkforceReadiness = $('#PostsecondarAndWorkforceReadiness').val();
if ("@Model.complianceTypeId" != 11 && academicAchievement != "" && academicAchievement != undefined && academicGrowth != "" && academicGrowth != undefined && academicGrowthGaps != "" && academicGrowthGaps != undefined) {
$('#Total').val("");
$('#Total').val(((parseInt(academicAchievement, 10) + parseInt(academicGrowth, 10) + parseInt(academicGrowthGaps, 10)) / 100) * 100 + "%");
$('#Total').attr("disabled", "disabled");
$('#TotalValuehdn').val((((parseInt(postsecondarAndWorkforceReadiness, 10) + parseInt(academicAchievement, 10) + parseInt(academicGrowth, 10) + parseInt(academicGrowthGaps, 10)) / 100) * 100 + "%"));
}
if ("@Model.complianceTypeId" == 11 && postsecondarAndWorkforceReadiness != "" && postsecondarAndWorkforceReadiness != undefined && academicAchievement != "" && academicAchievement != undefined && academicGrowth != "" && academicGrowth != undefined && academicGrowthGaps != "" && academicGrowthGaps != undefined) {
$('#Total').val("");
$('#Total').val((((parseInt(postsecondarAndWorkforceReadiness, 10) + parseInt(academicAchievement, 10) + parseInt(academicGrowth, 10) + parseInt(academicGrowthGaps, 10)) / 100) * 100 + "%"));
$('#Total').attr("disabled", "disabled");
**"@Model.complianceTypeId"**= (((parseInt(postsecondarAndWorkforceReadiness, 10) + parseInt(academicAchievement, 10) + parseInt(academicGrowth, 10) + parseInt(academicGrowthGaps, 10)) / 100) * 100 + "%");
}
}
aber diese Linie "@Model.complianceTypeId" warf dieser Fehler L - Wert erwartet wird
habe ich den Fehler Bild .Ich habe aber nur 7-Punkt.so kann ich nicht hinzufügen, das Bild .Also ich werde das Bild später
InformationsquelleAutor | 2013-06-19
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie nicht einstellen, Eigenschaften des Model-Objekts von javascript für den ganz einfachen Grund, dass Ihr Modell Leben auf dem server, in der Erwägung, dass javascript auf dem client ausgeführt wird. Der einzige Weg, um javascript zu modifizieren einige server-Seite Wert ist zum senden einer Anforderung an den server. Es gibt viele Möglichkeiten, das zu tun, von denen der eine umfasst die Verwendung von AJAX.
Das ist, weil Sie versuchen, ordnen Sie die Rechte hand mit dem Wert des Ausdrucks zu einem string-literal auf der linken Seite, die keinen Sinn ergibt. Das folgende ist völlig ungültig javascript:
"some string" = someValue;
. Das ist, was Sie schrieb.Buti verwendet die gleiche Linie in meine if-Bedingung .Diese Zeile keinen Fehler zurück . warum @DarinDimitrov
Werfen Sie einen Blick auf das, was entsteht in der resultierenden HTML-Code. Sie werden sehen, dass:
if ("123" != 11 && && academicAchievement != "" && academicAchievement != undefined && academicGrowth != "" && academicGrowth != undefined && academicGrowthGaps != "" && academicGrowthGaps != undefined)
ist gültiges javascript. Außer, dass Sie vergleichen einen string in einen integer -"123" != 11
eine sehr schlechte test. Wenn Sie schreiben@Model.complianceTypeId
dieses wird auf dem server ausgeführt, und auf dem server ausgewertet. Auf dem client erhalten Sie nur das Ergebnis dieser Auswertung. Es gibt keine Modelle auf dem client.Durchsuchen Sie die generierten HTML-gesehen, die von Ihrem webbrowser. Das ist es, was ausgeführt wird durch javascript.
InformationsquelleAutor Darin Dimitrov