You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在for循环中使用jQuery获取@Html.EditorFor控件的值

解决jQuery获取@Html.EditorFor控件值的问题

方法1:通过指定的class选择器获取

你已经给@Html.EditorFor添加了eventdate类,直接用类选择器就能定位元素,示例代码:

// 获取所有日期控件的值,返回数组
var allEventDates = $('.eventdate').map(function() {
    return $(this).val();
}).get();

// 获取表格第一行的日期值
var firstRowDate = $('#tblEvents tbody tr:first .eventdate').val();

方法2:通过Razor生成的name属性定位

@Html.EditorFor会自动生成格式为ModelEvents[i].EVENTDATE的name属性,利用属性选择器可以精准定位:

// 获取索引为0的日期控件值
var targetDate = $('input[name="ModelEvents[0].EVENTDATE"]').val();

// 遍历所有日期控件并输出值
$('input[name^="ModelEvents["][name$="].EVENTDATE"]').each(function() {
    console.log("日期值:" + $(this).val());
});

方法3:结合表格行上下文获取(如点击行时)

如果需要在用户操作(比如点击表格行)时获取对应行的日期,可通过行的上下文查找:

// 给表格行绑定点击事件
$('#tblEvents tbody tr').on('click', function() {
    var currentRowDate = $(this).find('.eventdate').val();
    alert("当前行日期:" + currentRowDate);
});

注意事项

  • 确保页面已正确引入jQuery库,且代码放在$(document).ready()中执行,避免DOM未加载完成导致无法找到元素:
    $(document).ready(function() {
        // 这里写你的jQuery代码
    });
    
  • 若EditorFor生成的是HTML5日期输入框,val()方法返回的是标准ISO格式字符串(例如2024-05-20),可直接使用或转换格式。

内容的提问来源于stack exchange,提问作者Karthikeyan Manickam

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 15:03:34