У меня есть редактор шаблонов с dropdownlistfor:DropDownListFor OnChange JQuery не работает через код
@Html.DropDownListFor(model => model.task_state_id,
new SelectList((System.Collections.IEnumerable)ViewData["TaskStates"], "task_state_id", "state"),
new { @Id = "ddlState" })
и на мой взгляд, у меня есть этот скрипт:
<script type="text/javascript">
$(this.document).ready(function() {
$('#ddlState').change(function() //wire up on change event of the 'country' dropdownlist
{
var selection = $('#ddlState').val(); //get the selection made in the dropdownlist
alert("ho");
if (selection === 4) {
alert("hi");
$('#CompletionDate').val() = @DateTime.Now.Date;
}
var completion = $('#CompletionDate').val();
alert(completion);
})
});
</script>
По какой-то причине, этот сценарий будет не запускать и не отображать никаких предупреждений. Когда я удаляю весь код и просто получаю alert("Hello World!")
или alert(selection)
, он без проблем отобразит предупреждение. Но почему он не отображает ничего, когда я делаю свой настоящий код?
Для записи файл сценария находится в файле Details.cshtml, а раскрывающийся список - в шаблоне редактора.
UPDATE 1
Рабочий сценарий выглядит так:
@section Scripts{
<script type="text/javascript">
$(this.document).ready(function() {
$('#ddlState').change(function() //wire up on change event of the 'country' dropdownlist
{
var selection = $('#ddlState').val(); //get the selection made in the dropdownlist
if (selection == '4') {
$('#CompletionDate').val('@DateTime.Now.Date');
}
var completion = $('#CompletionDate').val();
alert(completion);
})
});
</script>
}
У вас есть ошибки в консоли браузера? –
Это будет проблема оформления заказа скриптов. По вашему мнению, используйте '@section scripts {your script here}'. Убедитесь, что '@RegisterSection (« scripts », true)' у вас есть в '_Layout.cshtml' в конце перед закрытием тега body –
@StephenMuecke, привет снова. Я чувствую, что ты так много мне помогаешь - мог бы просто написать все это для меня! : P Я не вижу ошибок в консоли, поэтому я немного смущен. – chickenricekid