在控制器中,我希望能够获得模型的客户端验证规则.我使用数据注释附加了一些属性,并希望能够通过ajax调用将某些内容传递回客户端,以便我可以自动构建jquery validate选项.
通常这是通过不引人注目的东西免费完成的,但我正在尝试利用knockout绑定,同时仍然不必在服务器和客户端上复制验证规则.
如果不在模型服务器端使用反射,我有点不确定如何实现这一点.
我试过的代码如下:
var dataO = new Object();
dataO.numberId = 1;
dataO.companyId = 531;
$.ajax({
type: "POST",
url: "TelephoneNumbers.aspx/DeleteNumber",
data: "{numberId:1,companyId:531}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(msg) {
alert('In Ajax');
}
});
Run Code Online (Sandbox Code Playgroud)
我想将对象dataO作为ajax数据传递,我该怎么办呢?
我正在尝试使用jquery validate设置验证,并且我已经从服务器返回viewmodel,映射到客户端并成功地使knockout js绑定一些数据.
我包含一个调用验证,但验证永远不会触发,但是如果我在输入框上放置一个类然后调用有效它触发按预期方式.
有任何想法吗?
<script type="text/javascript">
var viewModel;
$(document).ready(function () {
$.ajax({
url: 'Home/GetUserData',
type: 'post',
success: function (data) {
viewModel = ko.mapping.fromJS(data);
viewModel.save = function () { sendToServer(); };
ko.applyBindings(viewModel);
main();
}
});
});
function main() {
$("form").validate({
rules: {
birthPlace: {
required: true,
minlength: 2
}
}
});
}
function sendToServer() {
alert($("form").valid());
}
</script>
}
<h2>@ViewBag.Message</h2>
<form id="nameSubmit" action="">
<div>
The name is: <span id="test" data-bind="text: Name"></span>
</div>
<div>
He's <span id="age" data-bind="text: Age"></span>
</div>
<div> …Run Code Online (Sandbox Code Playgroud) 我有以下jQuery表达式,在函数内部我需要对被点击的对象的引用,有没有办法做到这一点?
$('#tagList li').click(function() {
/* contents */
});
Run Code Online (Sandbox Code Playgroud) 我有以下代码,但一旦提交到服务器,我得到的字符串是"未定义"而不是null或空.这导致问题,因为我无法执行验证.任何想法如何防止这种情况发生时使用淘汰赛.
var viewModel = {
userName: ko.observable(""),
emailAddress: ko.observable(""),
verifyEmailAddress: ko.observable(""),
OptOut: ko.observable(true),
Grades: ["Grade 1", "Grade 2", "Grade 3", "Grade 4", "Grade 5", "Grade 6"],
gradeSelected: ko.observable(["Grade 1"])
};
ko.applyBindings(viewModel);
$("#addUser").click(function (e) {
$.ajax({
url: 'AddUser',
dataType: 'json',
data: JSON.stringify(viewModel),
type: 'POST',
success: function (data) {
$("#errorSection").text(data.Success).show();
}
});
e.preventDefault();
});
Run Code Online (Sandbox Code Playgroud)
提前致谢
我有一个流式传输jpeg的aspx页面.它设置内容类型,然后写入响应流.如果我直接查看图像,他们会有一种享受,但如果我使用fancybox 1.2.6,我会得到以下内容. alt text http://img686.imageshack.us/img686/3348/fancybox.png
使用fancybox 1.2.1,图像确实显示.
这是推出图像的代码.
using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
{
using (Stream responseStream = response.GetResponseStream())
{
using (Image outImg = Image.FromStream(responseStream))
{
Response.Clear();
Response.ContentType = "image/jpeg";
outImg.Save(Response.OutputStream, ImageFormat.Jpeg);
}
}
}
Run Code Online (Sandbox Code Playgroud)
有帮助吗?
我有以下jquery代码.
var destTable = $("#numbers");
$(document).ready(function() {
$("#btnAdd").click(function() {
//Take the text, and also the ddl value and insert as table row.
var newRow = $("<tr><td>hi</td></tr>");
$("#numbers").append(newRow);
});
});
Run Code Online (Sandbox Code Playgroud)
我真正想要的是存储一个元素的引用,然后从那里使用它.
上面的代码按预期添加了一行到我的表,但如果我使用.$(destTable).append(newRow)或者destTable.append(newRow)没有任何事情可以让任何人为我揭开这一点?
谢谢
我在表单上有一个隐藏按钮,我需要单击该按钮以触发附加到更新面板的asyncpostback触发器.
这是怎么做到的?
我有一个dictionary<string,string>视图模型的一部分.我要做的是循环这个对象并将其输出为json对象.我之所以这样,是因为我可以正确地本地化我的客户端脚本文件.
这个输出需要看起来像
var clientStrings = {"test":"yay","goodBye":"Nah"};
Run Code Online (Sandbox Code Playgroud)
任何想法如何正确实现这一点.
提前致谢.
jquery ×6
asp.net-mvc ×3
knockout.js ×3
asp.net ×2
click ×1
fancybox ×1
image ×1
javascript ×1
json ×1
razor ×1