2014-09-19 83 views
0

我试图从我的下拉列表中选择项目并将其用于验证。MVC:从<Select>使用JQuery获取选定的文本

以前我用:

$("#PolicyOrganisation").text()); 

哪些工作,但后来我改变了我的下拉菜单对以下(从数据库加载,而不是硬编码):

<div class="form-group"> 
    <label for="diagnosticMode" class="control-label col-xs-2">Policy Organisation:</label> 
    <select id="DD1" name="PolicyOrganisation"> 
     <option value="-1">Select</option> 
     @foreach (var item in ViewBag.PolicyOrgs) 
     { 
      <option value="@item.Id">@item.Name</option> 
     } 
    </select> 
</div> 

我的jQuery验证过:

//Validation for Dropdown  
    var platform1 = $('#PolicyOrganisation option:selected').text(); 
    var Valid1 = (platform1 !== 'Select') 
    if (!Valid1) { 
     $('#PolicyOrganisation').css({ 
      "border": "1px solid red", 
      "background": "#FFCECE" 
     }); 
    } 

我发现这个方法通过搜索这个问题.. Get selected text from a drop-down list (select box) using jQuery

但新版本不起作用?任何人都可以提出为什么这可能是?

+0

出于好奇,为什么你会不使用@ Html.DropDownListFor()'和'@ Html.ValidationMessageFor()'与jQuery的不显眼的验证? – 2014-09-19 11:37:32

回答

2

'PolicyOrganisation' 不是一个id是name属性请使用 'DD1' 而不是 'PolicyOrganisation'

var platform1 = $('#DD1 option:selected').text(); 
    var Valid1 = (platform1 !== 'Select') 
    if (!Valid1) { 
     $('#DD1').css({ 
      "border": "1px solid red", 
      "background": "#FFCECE" 
     }); 
    } 
+0

谢谢我忽视了这一点。不幸的是它仍然没有为我工作(我的文本框验证工程,所以我知道jquery工作) – Baggerz 2014-09-19 09:24:07

相关问题