ich in einem anderen Beitrag gesehen haben, die Sie wie so eine JavaScript-Funktion in Ihren Rasierer Code aufrufen können:aufrufen JavaScript-Funktion in MVC 5 Razor Ansicht
@:FunctionName()
Für mich, obwohl dies nur gibt die tatsächlichen Worte FunctionName()
Hier ist meine Ansicht:
@model PriceCompare.Models.QuoteModel
@{
ViewBag.Title = "Quote";
}
<h2>Quote</h2>
@if (@Model.clarify == true)
{
// do drop down loic
@:ShowClarify();
}
else
{
// fill quote
@:ShowQuote();
}
<div class="clarify">
You can see the clarify div
</div>
<div class="quote">
You can see the quote div
</div>
@section head {
<script type="text/javascript">
$(document).ready(
function ShowQuote() {
$(".quote").show();
},
function ShowClarify() {
$(".clarify").show();
}
);
</script>
}
ist es, weil ich es in einem `@if 'verschachtelt haben? Wie auch immer darum herum?
Danke. Ist die "@:" - Syntax etwas? Wurde es eingestellt? – Guerrilla
Die '@:' - Syntax weist Razor nur an, das Folgende als reinen Text zu behandeln. Im Kontext eines Codeblocks wäre dies erforderlich, um zu verhindern, dass Razor versucht, die Methode 'FunctionName()' in einem C#/VB-Kontext anstelle eines JavaScript-Kontexts auszuführen, in dem sie tatsächlich existiert. –
@Guerrilla Ich habe dies nicht in Visual Studio eingefügt, also ist es möglich, dass Sie noch '@:' vor den JavaScript-Funktionsaufrufen benötigen. – jrummell