我想使用jQuery($ .post)来提交我的html表单,但我想使用MVC 2的客户端验证功能.目前我将post函数连接到表单标签的"OnSubmit"事件,但我无法挂钩验证,理想情况下我希望能够做到
if (formIsValid) {
$.post('<%=Url.Action("{some action}")%>'...
}
Run Code Online (Sandbox Code Playgroud)
请注意,客户端验证正在使用jQuery.validation,在发布数据之前,我无法测试验证是否成功.
安德鲁
最终的解决方案
<%
Html.EnableClientValidation();
using (Html.BeginForm("Register", "Account", FormMethod.Post, new { id = "registrationForm" })) {
%>
...
<button type="submit" onclick="return submitRegistration();">Register</button>
<%
}
%>
<script type="text/javascript">
function submitRegistration() {
if ($("#registrationForm").valid()) {
$.post('<%=Url.Action("{some action}")'...
}
// this is required to prevent the form from submitting
return false;
}
</script>
Run Code Online (Sandbox Code Playgroud) 我有一个看起来像这样的nhibernate linq查询:
from b in session.Query<Bookmark>()
where b.Uri.Equals(uri) ||
b.Uri.Equals("www." + uri) ||
string.Concat("www.", b.Uri).Equals(uri)
select b
Run Code Online (Sandbox Code Playgroud)
这个爆炸,说康卡特不支持,但当我改变它
from b in session.Query<Bookmark>()
where b.Uri.Equals(uri) ||
b.Uri.Equals("www." + uri) ||
("www." + b.Uri).Equals(uri)
select b
Run Code Online (Sandbox Code Playgroud)
它运行正常,但查询如下所示:
select cast(count(*) as SIGNED) as col_0_0_
from bookmarks bookmark0_
where bookmark0_.Uri = 'www.google.com'
or bookmark0_.Uri = 'www.www.google.com'
or 'www.'+bookmark0_.Uri = 'www.google.com';
Run Code Online (Sandbox Code Playgroud)
其中'www.'+ bookmark0_.Uri是"添加"而不是concat('www.',bookmark0_.Uri).有没有办法在Linq for NHibernate for MySQL中连接字符串?