我的html中有一个带有以下标记的表单
<form>
<input type="text" name="fname" required>
<input type="submit" value="Submit">
</form>
Run Code Online (Sandbox Code Playgroud)
我还有两个脚本标签,一个用于jquery,另一个用于我的javascript,我称之为validate.js
<script src="jquery-2.1.4.min.js"></script>
<script src="validate.js"></script></body>
Run Code Online (Sandbox Code Playgroud)
当我将以下代码放入我的validate.js文件并提交无效数据时.该页面按预期警告"无效".
$("form input").on("invalid", function() {
alert("invalid");
});
Run Code Online (Sandbox Code Playgroud)
当我在validate.js中使用此代码时,当我单击输入时,页面再次按预期运行,此时警告"单击".
$("body").on("click", "form input", function(){alert("click");});
Run Code Online (Sandbox Code Playgroud)
但是,以下代码不起作用.提交无效数据时,无效事件处理程序不会触发,并且"无效"不会被警告.
$("body").on("invalid", "form input", function(){alert("invalid");});
Run Code Online (Sandbox Code Playgroud)
我想这样做,因为在我的应用程序中,我从ajax请求向我的页面添加一个表单,因此我想将事件处理程序附加到正文而不是表单本身.有什么理由不行吗?
我正在使用实体框架核心,我想在 2 个不同的类中使用相同的拥有类型。这通常很好,但就我而言,我遇到了错误。
我正在使用 MySql 数据库,要求所有布尔值都映射到数据库中列类型为tinyint(1) 的字段。为了在我的 OnModelCreating 方法中实现这一点,我循环遍历所有属性,如果属性是布尔值,我将其映射到tinyint(1)。然而,一旦我在两个不同的类中使用相同的拥有类型,我就会收到错误。
下面我编写了一个演示程序来显示我的问题。重新创建它所需的只是 2 个表、组织和联系人。两者都有字段 id、街道和家庭。为了使用 MySQL,我安装了 nuget 包 MySql.Data.EntityFrameworkCore (v8.0.17)。我已在 .net core 2.2 控制台应用程序中运行代码。
using Microsoft.EntityFrameworkCore;
using System;
using System.Linq;
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
namespace MyDemo
{
class Program
{
static void Main(string[] args)
{
using(var ctx = new MyDbContext())
{
var contact = new Contact
{
Address = new Address
{
Street = "x",
Home = true
}
};
ctx.Contacts.Add(contact);
ctx.SaveChanges();
}
}
}
public class MyDbContext: DbContext
{
public MyDbContext()
{
} …Run Code Online (Sandbox Code Playgroud) 我有一个我喜欢并且有效的日期选择器。它显示为一个与表单的其余部分一致的整洁的框,单击该框会提示一个日期选择器组件,当选择日期时,会填充一个文本框。
标记:
<div class="form-group">
<div id="datepicker-group" class="input-group date" data-date-format="dd/mm/yyyy">
<input class="form-control" name="data" type="text" />
<span class="input-group-addon"><i class="glyphicon glyphicon-calendar"></i></span>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
jQuery
<script>
$(document).ready(function() {
$("#datepicker-group").datepicker({
format: "dd-M-yyyy",
todayHighlight: true,
autoclose: true,
clearBtn: true
});
});
</script>
Run Code Online (Sandbox Code Playgroud)
我还有一个正在构建的表单@Html.BeginForm,模型中的其他属性通过自由文本字段分配其值,@Html.TextBoxFor这很简单。如何将此日期选择器 div 放入可分配给我的StartDate属性的表单字段中?除了能够单击该框并弹出日期选择器组件的功能之外,我还想保留当前日期选择器框的外观和感觉。
我正在尝试做一些代码,基本上说是做搜索,如果orderByLastName是按姓氏为真的顺序,如果是按名字的假顺序.
if(orderByLastName)
{
var query = from p in db.People
orderby p.LastName
select new {Name = p.FirstName + " " + p.LastName}
}
else
{
var query = from p in db.People
orderby p.FirstName
select new {Name = p.FirstName + " " + p.LastName}
}
Run Code Online (Sandbox Code Playgroud)
以上代码是我尝试完成此操作.它不起作用,因为查询不存在于if上下文之外,这显然是坏的!而且我很确定代码违反了干法原则.有人能看到更好的方式吗?谢谢.
c# ×2
asp.net ×1
asp.net-mvc ×1
ef-core-2.2 ×1
html5 ×1
jquery ×1
linq ×1
mysql ×1
razor ×1
validation ×1