Итак, у меня есть выпадающий список и текстовое поле:
<table>
<tr>
<td>Group Name: </td>
<td><%= Html.DropDownListFor(m => m.IndicationCalculatorGroupId, DropDownData.IndicationsGroup(SessionManager.Company.EntityID, ICConstants.IndicationsCalculatorGroupType), "", new { propertyName = "IndicationCalculatorGroupId", onchange = "UpdateField(this, false);GroupNameChange();" })%></td>
</tr>
<tr id="newGroupNameRow">
<td>New Group Name: </td>
<td><%= Html.TextBoxFor(m => m.IndicationCalculatorNewGroupName, new { @class = "economicTextBox", propertyName = "IndicationCalculatorNewGroupName", onchange = "UpdateField(this);" })%></td>
</tr>
</table>
У меня есть JQuery на странице, которая показывает / скрывает текстовое поле на основе выпадающего списка.
function GroupNameChange()
{
$("#IndicationCalculatorGroupId").change(function() {
if ($("#IndicationCalculatorGroupId option:selected").text() == 'Create a New Group')
{
$("#newGroupNameRow").show();
}
else{
$("#IndicationCalculatorNewGroupName").val('');
$("#newGroupNameRow").hide();
}
});
}
Но, похоже, что в первый раз, когда вы изменяете раскрывающийся список на «Создать новую группу», текстовое поле не показывает или ничего не делает, оно появляется только тогда, когда вы выбираете какое-то другое значение и ТО затем выбираете «Создать Новая группа "код начинает работать.
Что не правильно подключено?