编辑器中的jquery

标签 jquery asp.net-mvc-3

我正在尝试在 asp.net mvc3 中使用 jquery。我正在使用 EditorTemplates 作为列表。我的模型是这样的

public class staffinfo
{
    public int staffid { get; set; }
    public double extgrade { get; set; }
    public string lvlid { get; set; }
    public IList<SelectListItem> level { get; set; }
    public string grdid { get; set; }
    public IList<SelectListItem> grade { get; set; }
    public double pf { get; set; }       
    public double wages { get; set; }
    public List<hrfacility> facility { get; set; }

}

public class hrfacility
{
    public int id { get; set; }
    public string name { get; set; }
    public double price { get; set; }        
    public int staffid { get; set; }
    public string staffname { get; set; }               
    public double amount { get; set; }
    public bool selected { get; set; }
}

查看:

...
@Html.EditorFor(m => m.wages)    
@Html.EditorFor(m=>m.facility) 

hrfacility 的编辑器模板

@model Mysol.Models.hrfacility
...
@Html.DisplayFor(m=>m.name)
@Html.CheckBoxFor(m=>m.selected)    
@Html.EditorFor(m => m.staffname)
@Html.EditorFor(m => m.amount)

 <script type="text/javascript">
    $('#staffname').attr('readonly', true);
</script>

我使用了上述过程,但在编辑器模板中没有列表部分,jquery 工作正常,但对于这种特殊情况,它不起作用!!

是不是因为员工姓名可能不止一个?

我怎样才能让jquery适用于上述情况(使staffname只读)??

附注readonly 仅用于示例目的。我还需要使用 jquery 做其他事情,例如将值分配给文本框。如果我能完成这项工作,我想我也可以做其他事情。

谢谢

最佳答案

它不起作用,因为 staffname 的输入 ID 应该类似于 facility_0_staffnamefacility_1_staffname 等。

您最好将一个类添加到 staffname 输入并使用该类访问它。

您可以使用 Firebug(在 Firefox 上)检查 ID

关于编辑器中的jquery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11897777/

相关文章:

javascript - 使用 jsonp 和 ajax HTML

javascript - 查询 JSON 并检索值

asp.net - 在 MVC3 中的区域之间共享 Controller 和 View

c# - 类型 'X' 和 X' 都使用命名空间 'X' 中的 XML 类型名称 '' 。使用 XML 属性为类型指定唯一的 XML 名称和/或命名空间

javascript - 使用 jQuery tableSorter 插件过滤项目的选择器

javascript - 滚动到固定导航不粘

jquery 选择器不适用于使用 Cassette 的脚本标记内的元素

c# - 从 View 模型映射到域模型的最佳位置在哪里?

asp.net - CakePHP 回调函数在 ASP.Net MVC 中等效

c# - 如何通过 DataReader/DataTable 来查看?