如何让jQuery选择元素。在他们的身份证里?

如何让jQuery选择元素。在他们的身份证里?

给定以下类和控制器操作方法:

public School{
  public Int32 ID { get; set; }
  publig String Name { get; set; }
  public Address Address { get; set; }}public class Address{
  public string Street1 { get; set; }
  public string City { get; set; }
  public String ZipCode { get; set; }
  public String State { get; set; }
  public String Country { get; set; }}[Authorize(Roles = "SchoolEditor")][AcceptVerbs(HttpVerbs.Post)]
  public SchoolResponse Edit(Int32 id, FormCollection form){
  School school = GetSchoolFromRepository(id);

  UpdateModel(school, form);

  return new SchoolResponse() { School = school };}

及以下表格:

<form method="post">
  School: <%= Html.TextBox("Name") %><br />
  Street: <%= Html.TextBox("Address.Street") %><br />
  City:  <%= Html.TextBox("Address.City") %><br />
  Zip Code: <%= Html.TextBox("Address.ZipCode") %><br />
  Sate: <select id="Address.State"></select><br />
  Country: <select id="Address.Country"></select><br /></form>

我可以更新学校的实例和地址成员的学校。这太好了!感谢ASP.NETMVC团队!

但是,如何使用jQuery来选择下拉列表以便我可以预先填充它呢?我意识到我可以做这个服务器端,但是页面上还会有其他影响列表的动态元素。

下面是我到目前为止所掌握的内容,但由于选择器似乎与ID不匹配,所以它不起作用:

$(function() {
  $.getJSON("/Location/GetCountryList", null, function(data) {
    $("#Address.Country").fillSelect(data);
  });
  $("#Address.Country").change(function() {
    $.getJSON("/Location/GetRegionsForCountry", { country: $(this).val() }, function(data) {
      $("#Address.State").fillSelect(data);
    });
  });});


紫衣仙女
浏览 472回答 3
3回答

慕侠2389804

从…谷歌集团:在每个特殊字符之前使用两个反斜杠。jQuery选择器中的反斜杠转义下一个字符。但是您需要其中的两个,因为反斜杠也是JavaScript字符串的转义字符。第一个反斜杠转义第二个反斜杠,在字符串中给出一个实际反斜杠,然后转义jQuery的下一个字符。所以,我猜你是在看$(function()&nbsp;{ &nbsp;&nbsp;$.getJSON("/Location/GetCountryList",&nbsp;null,&nbsp;function(data)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;$("#Address\\.Country").fillSelect(data); &nbsp;&nbsp;}); &nbsp;&nbsp;$("#Address\\.Country").change(function()&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;$.getJSON("/Location/GetRegionsForCountry",&nbsp;{&nbsp;country:&nbsp;$(this).val()&nbsp;},&nbsp;function(data)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$("#Address\\.State").fillSelect(data); &nbsp;&nbsp;&nbsp;&nbsp;}); &nbsp;&nbsp;});});也要退房如何通过在CSS符号中使用字符的ID来选择元素?关于jQuery常见问题。

MM们

为jQuery转义它:function&nbsp;escapeSelector(s){ &nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;s.replace(&nbsp;/(:|\.|\[|\])/g,&nbsp;"\\$1"&nbsp;);}用法示例:e.find('option[value='+escapeSelector(val)+']')更多信息这里.
打开App,查看更多内容
随时随地看视频慕课网APP