javascript - 如何在 JavaScript 中为另一个 url 动作点击调用动态 id?
问题描述
我的 HTML 代码在这里:
<table>
<tr>
<td>
@Html.DropDownList("Statues", (SelectList)ViewBag.UserType, string.Empty, new { @class = "NewIDCn",@id = "name1" })
</td>
<td>
<a class = "UpdateU" href="@Url.Action("Update", "UserPromoted", new { id = item.UserID})">Update</a>
</td>
</tr>
<tr>
<td>
@Html.DropDownList("Statues", (SelectList)ViewBag.UserType, string.Empty, new { @class = "NewIDCn",@id = "name2" })
</td>
<td>
<a class = "UpdateU" href="@Url.Action("Update", "UserPromoted", new { id = item.UserID})">Update</a>
</td>
</tr>
</table>
我的剧本在这里,
<script type="text/jscript">
$(document).ready(function () {
var i = 0;
$('.NewIDCn').each(function () {
i++;
var newID = 'name' + i;
$(this).attr('id', newID);
$(this).val(i);
});
});
$(function () {
$('.UpdateU').click(function () {
var name = $('#name').val();
this.href = this.href + '?UserType=' + encodeURIComponent(name);
});
});
</script>
我的控制器在这里:
public ActionResult Update(string id, string UserType)
{
query = "UPDATE tblUserRegister SET UserType = ' " + UserType + "' WHERE (UserID = '" + id + "')";
cmd = new SqlCommand(query, conn);
cmd.ExecuteNonQuery();
}
此document.ready
函数用于自动递增动态 id name(name1,name2)
。当我点击 url 动作时,雕像 id 返回到 usertype functune 中的 id name。我该怎么做呢?并在控制器中返回 id 名称和用户类型?
解决方案
这可以通过多种方式实现。尝试以下一种:
向tr
元素添加一些类,如下所示
<table>
<tr class="t-row">
<td>
@Html.DropDownList("Statues", (SelectList)ViewBag.UserType, string.Empty, new { @class = "NewIDCn",@id = "name1" })
</td>
<td> <a class="UpdateU" href="@Url.Action(" Update ", "UserPromoted ", new { id = item.UserID})">Update</a> </td>
</tr>
<tr class="t-row">
<td>
@Html.DropDownList("Statues", (SelectList)ViewBag.UserType, string.Empty, new { @class = "NewIDCn",@id = "name2" })
</td>
<td> <a class="UpdateU" href="@Url.Action(" Update ", "UserPromoted ", new { id = item.UserID})">Update</a> </td>
</tr>
</table>
将您的脚本更改为
$(document).ready(function () {
$(document).off("click", ".UpdateU").on("click", ".UpdateU", function (event) {
var url = $(event.target).attr("href");
var val = $(this).parents(".t-row").find("select").val();
var newUrl = url +'?UserType=' + encodeURIComponent(val);
alert(newUrl );
event.stopPropagation();
return false;
});
});
newUrl将是控制器的 url。
推荐阅读
- highcharts - 使用 highcharts,我如何绘制一个柱形图,根据值和显示图例为各个列着色,如附图所示?
- amazon-web-services - 错误:无法验证实例配置文件“DataPipelineDefaultResourceRole”,因为不存在具有该名称的角色
- python - OSError: [Errno 9] 使用 Scapy 发送数据包时文件描述符错误
- java - 我的 RecyclerView 适配器的 getItemCount() 返回 0,即使里面有项目
- arrays - MATLAB 数组索引和切片
- python - 为 GRU 调整 LSTM 编码器解码器序列预测循环
- c - 如果没有正确分配,我应该在 C 中释放内存吗?
- raspberry-pi - 无法在 NTFS 磁盘上编译树莓派内核
- maven - Gitlab无法清除maven项目的缓存
- javascript - 我无法更改输入值反应 v0.14