我正在进行从Date到string的转换,然后返回在sessionStorage中使用.所以我先这样做:
sessionStorage.currentDate = myDate.toJSON();
Run Code Online (Sandbox Code Playgroud)
然后我这样做:
if (sessionStorage.currentDate ) {
myDate = new Date(sessionStorage.currentDate);
}
Run Code Online (Sandbox Code Playgroud)
问题是IE9 +中的myDate.toJSON()函数返回但在IE8中它返回结束时缺少小数部分.事实是,在IE8失败的随后的再转换成日期(结果从是)"2013-05-06T22:00:00.000Z""2013-05-06T22:00:00Z"new Date(sessionStorage.currentDate)NaN
知道为什么会这样,以及如何使这个代码适用于IE8 +?
我试图在debug中替换字符串,结果发现2个字符串都不起作用.所以它实际上似乎是一个new Date(sessionStorage.currentDate)无法识别格式的问题(是UTC)
我想我很了解ViewState,但以下是给我一些麻烦:
来自http://weblogs.asp.net/infinitiesloop/archive/2006/08/03/truly-understanding-viewstate.aspx
即使ViewState被禁用,回发控件(如下拉列表和文本框)也会恢复其发布状态(下拉列表的选定项目已被'发布'),因为即使禁用了ViewState,控件仍然可以发布其值
假设DropDownList将EnableViewState设置为false,那么(根据上面的引用)当用户通过选择DropDownList中的项目发出回发时,以下代码应该导致Label1.Text显示所选项目的值(因此DropDownList.SelectedValue应该返回用户选择的值,即使viewstate被禁用),但我得到一个空字符串:
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
string[] number = {"first","second","third"};
DropDownList1.DataSource = number;
this.DataBind();
}
if (IsPostBack)
{
Label1.Text = DropDownList1.SelectedValue; // displays empty string
// Label1.Text = DropDownList1.SelectedItem.Text; // causes an exception
// Label1.Text = DropDownList1.SelectedIndex.ToString(); // displays empty string
}
}
Run Code Online (Sandbox Code Playgroud)
该文章的作者似乎是这方面的专家,所以我假设我做错了什么!?!
感谢名单
我有一个项目需要为许多不同的客户进行测试和部署,而这些客户有时会有不同的需求.它是一个MVVC应用程序,我使用.net MVC,但只有少数部分和部分,如一些部分视图等,其他一切都是使用knockout.js的单页面应用程序.
所以我有不同的web.config文件,但我有一个包含客户端配置的文件,一个.js文件,对于每个客户都是不同的.
现在,如果使用配置管理器在visual studio中进行不同的配置,我会根据我选择的配置获得不同的web.config,这是完美的.
但是有没有办法在项目中为另一个文件获得相同的结果?
例如有一个myfile.nightly.js和myfile.debug.js等等.(这些文件包含配置设置,如页面颜色或徽标或要隐藏的部分,适用于每个不同的客户).
我在预建事件中尝试了这个解决方案:http://www.hanselman.com/blog/ManagingMultipleConfigurationFileEnvironmentsWithPreBuildEvents.aspx
但这是一个非常有用的帖子,我想知道VS2012是否有更实际的内容
似乎已经提出过这个问题,但在这个部分案例中却没有.
我的应用程序运行如下:
http://localhost:51198/Home/Subpage?type=1
Run Code Online (Sandbox Code Playgroud)
我的web服务被调用如下:
http://localhost:2880/DetailsService.svc/GetVisitors
Run Code Online (Sandbox Code Playgroud)
所以它不是跨域的.
它在IE9 +中完美运行,但是当我在IE8上时它会出现"No Transport Error".
检查这个其他问题作为任何代码的参考,因为除了corss-domain之外,Iøm完全像那里一样.
li当我点击它时,我正试图改变标签的css类.
我有这个:
var businessUnitsModel = {
businessUnitsList: ko.observableArray([
{ siteID: "a", title: "business1" },
{ siteID: "b", title: "business2" },
{ siteID: "c", title: "business3" },
{ siteID: "d", title: "business4" }]),
currentSelected: ko.observable(),
selectItem: function (site) { this.currentSelected(site.siteID); }
}
//overall viewModel
var viewModel = {
businessUnits: businessUnitsModel,
};
Run Code Online (Sandbox Code Playgroud)
<ul class="modal-list" data-bind="'foreach': businessUnits.businessUnitsList">
<li class="filterItem" data-bind="'text': title,
css: { 'filterItemSelect': siteID === $parent.currentSelected },
'click': $parent.selectItem">
</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
.filterItemSelect {
color:#0069ab;
}
Run Code Online (Sandbox Code Playgroud)
我无法理解为什么它不起作用.
javascript ×2
asp.net ×1
c# ×1
datetime ×1
jquery ×1
json ×1
knockout-2.0 ×1
knockout.js ×1
viewstate ×1