我想格式化这个日期:<div id="date">23/05/2013</div>
。
首先,我想在第一个/
分割字符串,并将其余部分放在下一行。接下来,我想在<span>
标签中包围第一部分,如下所示:
<div id="date">
<span>23</span>
05/2013</div>
23 05/2013
我做了什么:
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="date">23/05/2013</div>
<script type="text/javascript">
$(document).ready(function() {
$("#date").text().substring(0, 2) + '<br />';
});
</script>
见JSFiddle。
但这不起作用。有人可以用jQuery帮我吗?
使用split()
片段:
var data =$('#date').text();
var arr = data.split('/');
$("#date").html("<span>"+arr[0] + "</span></br>" + arr[1]+"/"+arr[2]);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="date">23/05/2013</div>
当你在--->
上拆分这个字符串23/05/2013
/
时
var myString = "23/05/2013";
var arr = myString.split('/');
你会得到一个大小3
阵列
arr[0] --> 23
arr[1] --> 05
arr[2] --> 2013
您最好使用replace
,而不是使用具有固定索引的子字符串:
$("#date").html(function(t){
return t.replace(/^([^\/]*\/)/, '<span>$1</span><br>')
});
一个优点是,如果第一个/
处于不同的位置,它仍然可以工作。
这个结构的另一个优点是它可以扩展到多个元素,例如通过更改选择器可以扩展到实现类的所有元素。
Demonstration(注意我必须在jsfiddle窗口左侧的菜单中选择jQuery)
你应该使用html():
$(document).ready(function(){
$("#date").html('<span>'+$("#date").text().substring(0, 2) + '</span><br />'+$("#date").text().substring(3));
});
尝试
date.innerHTML= date.innerHTML.replace(/^(..)\//,'<span>$1</span></br>')
<div id="date">23/05/2013</div>
用这个
<div id="date">23/05/2013</div>
<script type="text/javascript">
$(document).ready(function(){
var x = $("#date").text();
x.text(x.substring(0, 2) + '<br />'+x.substring(3));
});
</script>
试试这个
$("div#date").text().trim().replace(/\W/g,'/');
看一下正则表达式http://regexone.com/lesson/misc_meta_characters
享受我们;-)
var str = "How are you doing today?";
var res = str.split(" ");
这里变量“res”是一种数组。
你也可以通过声明它来明确表达
var res[]= str.split(" ");
现在您可以访问数组的单个单词。假设您想要访问数组的第三个元素,您可以通过索引数组元素来使用它。
var FirstElement= res[0];
现在,变量FirstElement包含值'How'