在我的Web应用程序中,我正在为表单字段使用一些自定义验证.在同一表格中,我有两个按钮:一个用于实际提交表单,另一个用于取消/重置表单.
大多数情况下,我使用Safari作为默认浏览器.现在Safari 5出来了,突然我的取消/重置按钮不再起作用了.每次我点击重置按钮时,我表单中的第一个字段确实得到了焦点.但是,这与我的自定义表单验证相同.当用另一个浏览器尝试时,一切都运行良好.我不得不成为Safari 5的问题.
我在我的Javascript代码中改变了一点,我发现以下行导致了问题:
document.getElementById("somefield").required = true;
Run Code Online (Sandbox Code Playgroud)
为了确保这确实是问题,我创建了一个测试场景:
<!DOCTYPE html>
<html>
<head>
<title>Test</title>
</head>
<body>
<form id="someform">
<label>Name:</label> <input type="text" id="name" required="true" /><br/>
<label>Car:</label> <input type="text" id="car" required="true" /><br/>
<br/>
<input type="submit" id="btnsubmit" value="Submit!" />
</form>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
我预期会发生什么事.第一个字段"名称"确实自动获得焦点.
其他人偶然发现了这个?
今天我用VS2008到VS2010的所有底层项目升级了我的解决方案.除了我的单元测试外,一切顺利.
首先,只有Web项目具有.NET 4的目标框架.所有其他项目仍然具有.NET 3.5.我将它们全部更改为.NET 4.
现在,当我调试我的单元测试时,它会在每个异常时中断.在2008年它只是不会通过并告诉我发生了异常.即使我定义了ExpectedException属性,它也会停止对每个异常进行调试.
我的一个测试的例子:
[TestMethod]
[ExpectedException(typeof(EntityDoesNotExistException))]
public void ConstructorTest()
{
AddressType type = new AddressType(int.MaxValue);
}
Run Code Online (Sandbox Code Playgroud)
EntityDoesNotExistException是一个自定义异常并继承Exception.
编辑 我在2008年和2010年查看了例外设置(ctrl + alt + e).在两个版本中,设置都是相同的.但是在2008年,当我有ExpectedException属性时,调试不会中断.在2010年,它确实打破了.
使用PreApplicationStartMethod属性发生了奇怪的事情.我确实在我的最新项目中实现了它.在AssemblyInfo.cs中,我有以下行:
[assembly: PreApplicationStartMethod(typeof(MyAssembly.Initializer), "Initialize")]
Run Code Online (Sandbox Code Playgroud)
Type和方法如下所示:
namespace MyAssembly
{
public static class Initializer
{
public static void Initialize()
{
TranslationKeys.Initialize();
}
}
}
Run Code Online (Sandbox Code Playgroud)
当我重建我的应用程序并在浏览器中加载它时,我收到以下错误:
程序集"MyWebApp,Version = 0.0.1.0,Culture = neutral,PublicKeyToken = null"上的PreApplicationStartMethodAttribute指定的方法无法解析.键入:'MyAssembly.Initializer',MethodName:'Initialize'.验证类型是否为public且方法是public和static(在Visual Basic中为Shared).
我真的不知道问题是什么.
我有这个功能来打印所有<img>具有属性的图像尺寸[proto].
当我使用此each方法尝试该函数时,它只返回一个函数.
这是什么错误?
function size(){
var $img = $('img[proto]');
$($img).each(function(){
var height = $(this).height;
var width = $(this).width;
$(this).parent().find('p').remove();
$(this).parent().append('<p class="size">' + width + '-' + height + '</p>');
});
}
size();
Run Code Online (Sandbox Code Playgroud)