如何将剃刀视图模态属性值传递给javascript函数
How to pass a razor view modal property value to a javascript function
我尝试将razor值发送到jquery函数。
视图:
@Html.TextBoxFor(model => model.NumTransportado, new { @class = "form-control input-sm", id = "NumTransResp" + Model.ServicosID + "", name = "NumTransResp" + Model.ServicosID + "", onchange = "PreencheDadosVendedor(this, 3, " + @Model.ServicosID + ")" })
我可以使用除" + @Model.ServicosID + "
之外的所有参数
Js文件:
function PreencheDadosVendedor(idVend, tipoFuncionario, idServicoEdicao) {
$.getJSON("/Contrato/getDadosVendedor", { id: $(idVend).val(), tipoFuncionario: tipoFuncionario },
function (result) {
switch (tipoFuncionario) {
case 1:
$("#NomeVendedor_Contrato").val(result.NomeVendedor);
case 2:
$("#NomeTransResponsavel").val(result.NomeVendedor);
case 3:
$("#NomeTransResponsavel_" + idServicoEdicao + "").val(result.NomeVendedor);
}
});
}
我试着做idSericoEdicao
是我的@Model.ServicosID
,但我有相同的结果:未定义的
未定义的原因(假设值是字符串)是因为您需要将@Model.ServicosID
用引号括起来,否则它会将属性的值作为变量的名称,而只需要将值作为字符串传递。
试试这个:-
@Html.TextBoxFor(model => model.NumTransportado,
new { @class = "form-control input-sm",
id = "NumTransResp" + Model.ServicosID + "",
name = "NumTransResp" + Model.ServicosID + "",
onchange = "PreencheDadosVendedor(this, 3, '" + @Model.ServicosID + "')" });
^____ ^____
或者最好这样做,而不是添加onchange
属性;附加一个事件,并使用data-*
属性来存储特定于元素的值,这样就可以分离html和js:
即:
@Html.TextBoxFor(model => model.NumTransportado,
new { @class = "form-control input-sm myclass", //Add a class
id = "NumTransResp" + Model.ServicosID + "",
data_tipoFuncionario = 3, //Add a data attribute
name = "NumTransResp" + Model.ServicosID + ""});
和
$('.myclass').change(function(e){
var idServicoEdicao = this.id.replace("NumTransResp",""), //get the part from its own id
tipoFuncionario = $(this).data("tipoFuncionario"); //get the value from data attribute
$.getJSON("/Contrato/getDadosVendedor", { id: this.value, tipoFuncionario: tipoFuncionario },
function (result) {
switch (tipoFuncionario) {
case 1:
$("#NomeVendedor_Contrato").val(result.NomeVendedor);
case 2:
$("#NomeTransResponsavel").val(result.NomeVendedor);
case 3:
$("#NomeTransResponsavel_" + idServicoEdicao).val(result.NomeVendedor);
}
});
});
相关文章:
- 如何将值传递给wicket中的javascript函数
- 使用Ajax将PHP值传递给javascript
- 将javascript值传递给PHP
- 将javascript值传递给php是正确的方法
- 在key up函数上将文本框值传递给javascript
- 多个单选按钮,需要将选定的值传递给javascript
- 将 MSSQL 表值传递给 javascript
- 我无法使用JSON将值从javascript传递给PHP脚本
- 如何将数据存储值传递给javascript?我需要从gae数据存储中获取数据,并需要传递javascript
- 将索引值传递给javascript命名空间数组
- 将文本框值传递给javascript函数
- 如何解决将值传递给javascript函数时的错误
- 将javascript返回值传递给MVC 4中的控制器
- 将参数值传递给javascript函数
- 无法将jsp值传递给javascript
- 在mvc4中将值从javascript传递给ajax
- 如何将客户端javascript返回值传递给ASP经典服务器端
- 如何将剃刀视图模态属性值传递给javascript函数
- 将字符串值传递给selenium中的Javascript Executor
- 将Javascript数组值传递给HTML