2015-09-07 88 views
-5

我有一个网站,其上有3个手风琴。在我的一个手风琴中,用户点击“创建”按钮,然后显示一些字段(这一切都工作正常)。我的问题是我无法让我的JavaScript运行在我的下拉列表中。触发JavaScript选择下拉列表

下面的代码是什么我:

function ABC(value) 
{ 
    //alert("Not the same."); 
    if (document.getElementById("RegCashMove_From_DropDownList").value != "- - Please select - -") 
    { 
      var e = document.getElementById("RegCashMove_From_DropDownList"); 
      alert(e.options[e.selectedIndex].value); 
    } 
} 

Sever的

template.Nvc.Add("[!From_DropDownList]", (Html.DropDownList("RegCashMove_From_DropDownList", (List<SelectListItem>)ModelAdditional.InvestmentPartnerNames, new { @class = "form-control", onchange = "ABC(this.value);" }).ToHtmlString())); 

HTML

<div class="col-sm-6 col-md-4" id="FromDiv"> 
    <select name="RegCashMove_From_DropDownList" class="form-control" id="RegCashMove_From_DropDownList" onchange="ABC(this.value);"> 
      <option value="- - Please select - -">- - Please select - -</option> 
      <option value="AJ Bell Investcentre">AJ Bell Investcentre</option> 
      <option value="Funds and Shares Service">Funds and Shares Service</option> 
    </select> 
</div> 

我的ID是 'RegCashMove_From_DropDownList'。

如果我在我的function中取消alert的注释,它将在我的页面加载后立即调用它,但是当我从下拉列表中选择一个选项时,它不会再被调用。

+4

你的 “HTML” 不是HTML。而且它也不是JS/JQ。 – Siguza

+0

请分享生成的html代码而不是服务器脚本 – Arvind

+0

这是Asp.Net MVC,请将相关标签添加到您的问题! –

回答

0

我的修复是

$("#RegCashMove_From_DropDownList").on('change', function() 
{ 
    if ($(this).val() != "<%=ModelAdditional.RegularCashMovement[0].From%>") 
    { 
     alert("Not same"); 
     $('#RegularCashMovements_Submit_Button').attr("disabled", true); 

    } 
    else 
    { 
     alert("Same"); 
     $('#RegularCashMovements_Submit_Button').attr("disabled", false); 
    } 
}); 
1

根据指定的标记,此JSFiddle演示下拉列表的简单onchange事件。

+0

感谢至少有人了解我的问题 – murday1983