这是我的代码,我正在使用一个表,该表为我提供了一个特定的数字,可以说是1000,如果我想使用该存储的数字,那么当我单击按钮时我的变量(“总计”)为1000,我不确定如何获取,我尝试了item.Salario,Model.Salario,它不起作用,我不知道它是否有可能>
@model IEnumerable<Planilla.Models.Planillas>
@{
ViewBag.Title = "Index";
Layout = "~/Views/Shared/_Layout.cshtml";
}
<h2>Planillas</h2>
<p>
@Html.ActionLink("Agregar Planilla", "Nuevo", null, new { @class = "btn btn-
success" })
</p>
<table class="table">
<tr>
<th>
@Html.DisplayNameFor(model => model.Empleado.Nombre)
</th>
<th>
@Html.DisplayNameFor(model => model.Salario)
</th>
<th></th>
</tr>
@foreach (var item in Model)
{
<tr>
<td>
@Html.DisplayFor(modelItem => item.Empleado.Nombre)
</td>
<td>
$@Html.DisplayFor(modelItem => item.Salario)
</td>
<td>
@Html.ActionLink("Edit", "Modificar", new { id = item.id }, new
{ @class = "btn btn-primary" }) |
<button onclick="myFunction()">Calcular </button>
<p id="demo"></p>
<script>
function myFunction() {
var Salario = item.Salario;
var total = Salario;
var mtotal;
if (total >0) {
mtotal = "su total es " + total;
} else {
mtotal = "Salario tiene que ser mayor que 0";
}
document.getElementById("demo").innerHTML = mtotal;
}
</script>
</td>
</tr>
}
</table>
基本上
$@Html.DisplayFor(modelItem => item.Salario)
给我一个特定的数字,我想将该数字显示在 我的如果在以下部分中
function myFunction() {
var Salario = item.Salario;
这样,当我单击按钮时,我会得到该商品的编号。萨拉里奥在桌子上给了我
我该怎么做?
答案 0 :(得分:0)
我在您的代码中注意到的几个问题。
首先,在循环中有一个带有p
的{{1}}元素。这意味着您的代码将生成多个具有相同id="demo"
属性值的p
元素。那是无效的HTML标记! ID应该是唯一的。
您还正在循环内定义Id
函数定义!运行您的代码并检查页面的查看源,然后查看您想要的内容。我们是否需要定义N次此方法?所有行的行为都相同,只有myFunction
的值不同:)
您可以做的是,可以将要传递的值保留在按钮的HTML5数据属性中,然后使用不引人注目的JavaScript来连接按钮上的click事件。单击按钮后,可以使用Salario
获取对单击的按钮的引用,从data属性读取值并将其用于计算。要更新当前行的this
元素,可以使用jQuery p
方法和closest
方法之类的相对方法。
这是一个使用jQuery库进行DOM操作的工作示例。
find
您可以看到我在按钮上设置了@foreach (var item in Model)
{
<tr>
<td>
@Html.DisplayFor(modelItem => item.Empleado.Nombre)
</td>
<td>
$@Html.DisplayFor(modelItem => item.Salario)
</td>
<td>
<button data-salario="@item.Salario" calculate>Calcular </button>
<p result></p>
</td>
</tr>
}
属性,它的值是项目的data-salario
属性。我还向Salario
标签添加了result
属性,我将使用该属性在jQuery选择器中获取该元素(有些人喜欢为此添加css类,但我没有)。我也对按钮做了同样的事情(添加了p
属性,但是我们也可以使用calculate
属性。
data-salario