我有这个代码巫婆工作正常,将第一个变成星号,但是如果我想要像1-5这样的数字变成与星号(*)相同数量的星号(*),我可以在同一个星号循环还是我需要创建5个不同的循环,每个数字一个?将数字更改为星号?
function changeNumber()
{
var elements= document.getElementsByClassName("grade");
for (var i=0; i<elements.length; i++) {
var element = elements[i];
var text = element.innerHTML;
var x = text.replace('1','*');
element.innerHTML=x;
}
}
此代码获取用户输入的值,并将其置于一个数组中......
var button = $('#add');
button.click(function()
{
//funktion för vad som ska hända när man klickar på knappen
var filmnamn = $('#name');
var filmnamnet = filmnamn.val();
var betyg = $('#star');
var betyget = betyg.val();
betyget = Number(betyget);
if(filmnamnet == 0)
{
$('#name').css('background-color', 'red');
}
if(betyget == 0)
{
$('#star').css('background-color', 'red');
}
if(betyget == 0 || filmnamnet == 0)
{
alert("Vänligen fyll i fälten korrekt");
}
else
{
var array = new Array();
array.unshift(betyget);
array.unshift(filmnamnet);
film_array.unshift(array);
betyg_array.unshift(array);
updateFilmList();
}
});
然后函数updateFilmlist看起来像这样...
var film_list = $("#filmlista");
var film_array = new Array();
function updateFilmList()
{
document.getElementById("name").value = '';
document.getElementById("star").value = 0;
var filmen = film_array[0][0];
var grade = film_array[0][1];
var element = '<li class="lista">' + filmen + '<span class="betyg">'+ grade +'</span></li>';
film_list.append(element);
changeNumber();
}
而且当我在changeNumber函数中添加了代码时,只有那些变成星号的数字才是动态创建的列表中的第一个列表元素......然后剩下的就显示为数字,为什么?顺便说一句,你可以忽略betyg_array因为它的其他功能和无关的问题...
所以你的意思是,如果文字是2更换**和3替代* **等? – Popnoodles 2013-03-10 13:36:57
是这就是我的意思 – spovell 2013-03-10 14:42:32