HTML。每个JS导致页面上与其他类问题
<ul class="courseDates">
<li class="dateOne col-sm-2">
{tag_course date 1}
</li>
<li class="dateTwo col-sm-2">
{tag_course date 2}
</li>
<li class="dateThree col-sm-2">
{tag_course date 3}
</li>
<li class="dateFour col-sm-2">
{tag_course date 4}
</li>
<li class="dateFive col-sm-2">
{tag_course date 5}
</li>
</ul>
的Javascript
$('.dateOne').each(function() {
var data =jQuery(this).text();
var arr = data.split('-');
jQuery(this).html('<a class="button '+arr[1] + '" href="/training-rego?trainingDate={tag_course date 1}&trainingName={tag_name_nolink}&courseId={tag_itemid}"> <span class="day">'+arr[0] + '</span> <span class="month">'+arr[1] + '</span> <span class="year">'+arr[2] + '</span> </a>');
});
$('.dateTwo').each(function() {
var data =jQuery(this).text();
var arr = data.split('-');
jQuery(this).html('<a class="button '+arr[1] + '" href="/training-rego?trainingDate={tag_course date 2}&trainingName={tag_name_nolink}&courseId={tag_itemid}"> <span class="day">'+arr[0] + '</span> <span class="month">'+arr[1] + '</span> <span class="year">'+arr[2] + '</span> </a>');
});
$('.dateThree').each(function() {
var data =jQuery(this).text();
var arr = data.split('-');
jQuery(this).html('<a class="button '+arr[1] + '" href="/training-rego?trainingDate={tag_course date 3}&trainingName={tag_name_nolink}&courseId={tag_itemid}"> <span class="day">'+arr[0] + '</span> <span class="month">'+arr[1] + '</span> <span class="year">'+arr[2] + '</span> </a>');
});
$('.dateFour').each(function() {
var data =jQuery(this).text();
var arr = data.split('-');
jQuery(this).html('<a class="button '+arr[1] + '" href="/training-rego?trainingDate={tag_course date 4}&trainingName={tag_name_nolink}&courseId={tag_itemid}"> <span class="day">'+arr[0] + '</span> <span class="month">'+arr[1] + '</span> <span class="year">'+arr[2] + '</span> </a>');
});
$('.dateFive').each(function() {
var data =jQuery(this).text();
var arr = data.split('-');
jQuery(this).html('<a class="button '+arr[1] + '" href="/training-rego?trainingDate={tag_course date 5}&trainingName={tag_name_nolink}&courseId={tag_itemid}"> <span class="day">'+arr[0] + '</span> <span class="month">'+arr[1] + '</span> <span class="year">'+arr[2] + '</span> </a>');
});
我需要删除.each
因此代码为每个项目运行时, .each在页面上的其他项目中导致未定义的错误。它需要是单独的,所以它会为每个日期组输出特定的标签,.each
函数使页面上的最后一项工作,但是在第一项上有未定义的错误。
Here是一个工作版本,所以你可以检查它。
有没有更好的方法来编写JS?
任何有关此事的帮助将不胜感激,谢谢。
是'{tag_course日期1}'的东西所取代?当你用'-'分割时,你会在问题中得到更好的结果,而这完全没有出现在本文中。 – Jamiec
是的,所以在网页上可能会有5门课程,每门课程都有一个输入课程日期1的字段,然后每个课程都有一个模板,当它在网站的前端生成时,会为每个课程分配日期一。那有意义吗? @Jamiec – Jake
请注意,尽量使用jQuery的方式保持一致,如果不需要它,可以同时使用'$()'和'jQuery()'。 – GillesC