Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery.data()并存储日期信息_Javascript_Jquery_Datetime - Fatal编程技术网

Javascript jQuery.data()并存储日期信息

Javascript jQuery.data()并存储日期信息,javascript,jquery,datetime,Javascript,Jquery,Datetime,我使用jQuery的.data()来回传递一个JSON对象。数组中的一个字段是表示日期的字符串。当我将字符串放入.data()函数时,它是一个字符串。当我检索它时,它是一个js日期对象(并且它附加了错误的时区信息)。有什么方法可以阻止此功能吗?听起来像是将HTML5样式的数据属性与jQuery.data()一起使用,这确实会强制将值设置为最佳匹配,请参阅 解决方法是使用.attr()方法 <div id="mydiv" data-two="2"> $('#mydiv').data(

我使用jQuery的.data()来回传递一个JSON对象。数组中的一个字段是表示日期的字符串。当我将字符串放入.data()函数时,它是一个字符串。当我检索它时,它是一个js日期对象(并且它附加了错误的时区信息)。有什么方法可以阻止此功能吗?

听起来像是将HTML5样式的数据属性与jQuery.data()一起使用,这确实会强制将值设置为最佳匹配,请参阅

解决方法是使用.attr()方法

<div id="mydiv" data-two="2">

$('#mydiv').data('two') -> 2 // a number
$('#mydiv').attr('data-two') -> "2"  // a string

$('#mydiv')。数据('two')->2//一个数字
$('#mydiv').attr('data-two')->“2”//a字符串

听起来像是将HTML5样式的数据属性与jQuery.data()一起使用,它确实强制将值强制为最佳匹配,请参阅

解决方法是使用.attr()方法

<div id="mydiv" data-two="2">

$('#mydiv').data('two') -> 2 // a number
$('#mydiv').attr('data-two') -> "2"  // a string

$('#mydiv')。数据('two')->2//一个数字
$('#mydiv').attr('data-two')->“2”//a字符串

我有完全一样的东西

我有以下代码:

<div class="datasegment red" data-id="0045" data-name="0045" data-level="red" style="opacity: 1; height: 142.28571428571428px; ">
        <a class="datavalue" href="#" style="font-size: 24px; ">0045</a>
    </div>
当字段中有一个“0045”时,它直接将其转换为我不想要的整数

然后我把它改成:

var ID = "";
ID = jQuery(this).attr("data-id");
然后,它正确地返回了我需要的字符串“0045”

在某些情况下,这是一个大问题,我仍然没有找到解决办法

嗯。
肖恩

我也吃了同样的东西

我有以下代码:

<div class="datasegment red" data-id="0045" data-name="0045" data-level="red" style="opacity: 1; height: 142.28571428571428px; ">
        <a class="datavalue" href="#" style="font-size: 24px; ">0045</a>
    </div>
当字段中有一个“0045”时,它直接将其转换为我不想要的整数

然后我把它改成:

var ID = "";
ID = jQuery(this).attr("data-id");
然后,它正确地返回了我需要的字符串“0045”

在某些情况下,这是一个大问题,我仍然没有找到解决办法

嗯。
Shaun

你能给我看看你的代码样本吗?(您传递的是JSON(字符串)还是JS对象?)看起来是由于页面上的另一个组件,而不是$.data()。对不起,你能给我看看你的代码吗?(您传递的是JSON(字符串)还是JS对象?)看起来是由于页面上的另一个组件,而不是$.data()。抱歉。在javascript中,html5样式的数据没有更改为日期类型。这似乎是事实,这是可以理解的,他们不想走上日期解析的道路。从提问者那里看到一些关于这个问题的更具体的代码是很好的。这是一个更大项目的一部分,但我将尝试从我所拥有的内容中做一个简单的例子。嗯。这可能是由于页面上使用相同对象的另一个组件造成的。我尝试了一些示例代码,但效果如预期。在javascript中,html5样式的数据没有更改为日期类型。这似乎是事实,他们不想走上日期解析的道路是可以理解的。从提问者那里看到一些关于这个问题的更具体的代码是很好的。这是一个更大项目的一部分,但我将尝试从我所拥有的内容中做一个简单的例子。嗯。这可能是由于页面上使用相同对象的另一个组件造成的。我尝试了一些示例代码,但它按预期工作。