2016-07-05 8 views
0

Использование MVC .. при нажатии кнопки «Создать» и конкретным полем выполняется пустое или пустое пространство, а затем отображается диалоговое окно для подтверждения. Если поле имеет значение, не диалоговое окно не отображается и перейти прямо к HttpPost Метод контроллер ..Функция Ожидаемая ошибка JavaScript

Вот то, что я до сих пор:

CSHTML:

<div class="form-group"> 
    @Html.LabelFor(model => model.ATime, "ATime:", htmlAttributes: new { @class = "control-label col-md-2" }) 
    <div class="col-md-10"> 
     @Html.EditorFor(model => model.ATime, new { htmlAttributes = new { id = "AValue", @class = "form-control a-textbox", @placeholder = "xxxx.x" } }) 
     @Html.ValidationMessageFor(model => model.ATime, "", new { @class = "text-danger" }) 
    </div> 
</div> 

<div id="dialog" title="Basic dialog"> 
    <p>This is the default dialog which is useful for displaying information. The dialog window can be moved, resized and closed with the 'x' icon. 
    </p> 
</div> 

<input type="submit" value="Create" class="btn btn-primary btnSubmitDS" /> 

JavaScript:

$(document).ready(function() { 
    $(".btnSubmitDS").on("click", function (e) { 
     var aValue = $("#AValue").val(); 

     alert(aValue); 

     if (aValue == null || aValue.length() == 0) { 
      $(function() { 
       $('#dialog').dialog(); 
      }); 
     } 
    }); 
}); 

CSS:

#dialog{ 
    display:none; 
} 

Теперь правильное значение быть приведен в готовность к пользователю, когда кнопка нажата, но выдает ошибку в if заявлении в JS говоря:

Функция Ожидаемое

Я попытался воссоздать это в JSFiddle, и правильное значение будет предупреждено, но диалоговое окно тоже не появляется, и я включил библиотеку jQuery.

Любая помощь приветствуется.

+1

'if (aValue == null || aValue.length === 0) { $ ('# dialog'). Dialog(); } '. в обработчике кликов. 'length' является ** свойством ** не _method_. Кроме того, '$ (function() {' является короткой формой 'ready()' и не требуется в обработчике. – Tushar

ответ

2

Использование aValue.length вместо aValue.length()

$('#SubmitBTN').on("click", function (e) { 
    var value = $('#TextBox').val(); 
    if(value == null || value.length == 0){ 
     $(function() { 
      $('#dialog').dialog(); 
     }); 
    } 
    }); 
+0

хорошо, что сработало, теперь, когда я запускаю, я получаю сообщение об ошибке, говоря, что он не поддерживает свойство или метод ' диалог ', и я загружаю jQuery, прежде чем этот скрипт будет запущен. –

1

использования aValue.length вместо aValue.length(). и добавить jquery UI после файла jquery. ''

Смежные вопросы