3

我需要将模型值 item.ID 传递给我的 javascript 函数之一,我该怎么做?

我试过function("@item.ID")但它不工作

4

4 回答 4

5

它通常以这种方式工作,您只需要省略""否则它会被解释为字符串。所以你可以在你的 JS 中写这样的东西:

var myinteger = @item.ID;

呈现为

var myinteger = 123;   //for example

编辑:当您 id 是整数时,这很有意义,当然,对于您需要将其封装在''or中的字符串""。不要对智能感知报告的任何语法错误感到恼火,这似乎有问题,但效果很好。

于 2013-09-17T12:03:50.417 回答
3

您可以通过这些方式 (1) 将模型数据传递到 java 脚本文件中。只需在隐藏字段中设置值并在 java 脚本中访问隐藏字段的值。(2)。并使用函数参数传递值。(3)。

        var LoginResourceKeyCollection = {
            UserName_Required: '<%= Model.UserName%>',
            Password_Required: '<%= Model.Password%>'

        }
   </script>
于 2013-09-17T12:25:08.210 回答
3

试试这个......在调用js函数时注意参数值的单引号

function MyJsFunction(modelvalue)
{
     alert("your model value: " + modelvalue);
}

<input type="button" onclick="MyJsFunction('@item.ID')" />
OR
<input type="button" onclick="MyJsFunction('@(item.ID)')" />
于 2013-09-17T12:53:44.157 回答
0

最好的解决方案是将您的文本框 ID 传递给 javascrpit 函数,然后在函数中检索 ID 中的值,

 @Html.TextBoxFor(model => model.DatemailedStart, new {id = "MailStartDate", placeholder = "MM/DD/YYYY", maxlength = "40", @class = "TextboxDates", @onblur = "isValidDate('MailStartDate');" })

  function isValidDate(id) {
    var dateString = $('#'+id+'').val();
  }
于 2018-05-22T08:57:21.340 回答