我在使用 razor 中的函数时遇到问题。我有一个我的实体存储的列表。我写了一个脚本,但出了点问题。我以前从未这样做过。我不擅长 HTML 或 Jscript 等。
我的代码
@model IEnumerable<Contact>
<script>
var name = document.getElementById("nameBox").value;
function nameBoxOperations(name) {
@foreach (var names in @Model)
{
if (names.givenName == name)
{
//OPERATIONS
}
}
}
</script>
在这段代码中,我想检查输入是否已存储在我的列表中。但我无法到达“名称”变量。如果我写这个“@string name = document.getElementById("nameBox").value;”它返回一个我不知道的错误。我怎样才能到达,谢谢
最佳答案
您可以尝试以下解决方案:
@model IEnumerable<Contact>
<script>
var name = document.getElementById("nameBox").value;
var collection = '@(Model.Select(x => x.givenName).Aggregate((a, b) => a + "," + b))'.split(',');
function nameBoxOperations(name) {
for(var i = 0; i < collection.length; i++)
if (collection[i] == name)
{
//OPERATIONS
}
}
</script>
关于javascript - 在 Razor 文件中使用 C# 代码和函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38843166/