我正在尝试将从页面上的文本框中读取的参数值设置为此链接:
<a asp-action="RetrieveEmailRecipients" asp-route-clientnumber="getClientNumber()">Retrieve Email Recipients</a>
我在页面底部的其他地方放了Javascript。但是,这不是将值传递给MVC操作方法参数的正确方法。
ClientNumber读取的参数是asp-route-clientnumber中的字符串/值,在这种情况下,值是getClientNumber()。
使用javascript / jquery在属性中设置值的正确方法是什么?
答案 0 :(得分:1)
您正在将服务器端代码和客户端代码混合在一起
我假设你的for (int i = 0; i < stringArray.length; i++) {
isLast = true;
String currWord = stringArray[i].trim();
if (stringArray.length-1 != i) {
isLast = false;
}
String quotes = "\"";
if (isLast == false) {
int nextNew = i+1;
String nextWord = stringArray[nextNew].trim();
String thirdWord = stringArray[nextNew+1].trim();
String fourthWord = stringArray[nextNew+2].trim();
// rest of the code
是一个javascript函数
在 javascript进入之前生成了Tag Helper,因此当服务器生成html时,它不知道getClientNumber()
是这样将被视为文字字符串
因此,正确的方法是在客户端号码可用时使用jquery修改url
类似的东西:
为锚点添加标识符 - 这样您就可以轻松地使用jquery访问它并删除路径
getClientNumber()
修改锚点的属性,以便在clientNumber准备就绪时包含clientNumber,或使用javascript导航到它
<a id="aRetriveEmail" asp-action="RetrieveEmailRecipients">Retrieve Email Recipients</a>