我想让Razor(C#)和javascript一起玩得很好,但我似乎无法做到。我在StackOverflow上搜索过其他文章,但似乎都没有 为我工作。
我正在使用外部JavaScript文件(不是强制性的,但它存在)。
我使用cshtml文件作为所有页面的标题布局(将head标记放在与实际尝试调用该函数的文件不同的文件中。
function entryClickHandler()
{
@AppState["gEntryID"] = document.getElementById("tester").innerHTML;
}
和
function entryClickHandler()
{
<text>
@AppState["gEntryID"] = document.getElementById("tester").innerHTML;
</text>
}
我在HeaderLayout文件中的外部文件和head部分都尝试了这些(以及其他一些变体)。
我知道C#在页面之前运行,JavaScript主要在页面之后运行(至少在这样的事件中运行)。
非常感谢任何帮助。
答案 0 :(得分:2)
它不起作用。您无法使用JavaScript在C#/ Razor端设置变量,而无需使用表单或ajax提交。
在Razor完成部分并呈现并发送页面之前,Javascript无法访问该页面。