我正在尝试使用数组更改按钮的面值,但我所得到的似乎并不起作用。
$(document).ready(function(){
var buttonValues = ["The letter 1", "The letter 2", "The letter 3", "The letter 4", "The letter 5"];
var randomNumber = Math.floor((randomImages.length)*Math.random());
$(".answer").text(buttonValues[randomNumber]);
});
上面的JQuery和下面的HTML。
<button class="answer" id="1">a</button><br>
<button class="answer" id="2">b</button><br>
<button class="answer" id="3">c</button><br>
任何帮助都会受到赞赏,jQuery非常新。我在JS文件中还有其他几个函数,所以会发布完整代码的小提琴。我现在可能已经把错误包裹起来了。再次对此非常新。 fiddle of current progress
感谢大家的帮助,意识到我用代码犯了一些愚蠢的错误,但也得到了一些额外的建议。
答案 0 :(得分:2)
您正在使用未定义的变量:
var randomNumber = Math.floor((randomImages.length)*Math.random());
应该是:
var randomNumber = Math.floor((buttonValues.length)*Math.random());
我猜你也想为每个按钮设置不同的文字。您当前的方法将为集合中的每个按钮设置相同的文本。这样的事情应该有效:
$('.answer').text(function() {
var randomNumber = Math.floor((buttonValues.length)*Math.random());
return buttonValues[randomNumber];
});
<强> Here's an updated fiddle 强>
答案 1 :(得分:1)
您收到错误:Uncaught ReferenceError: randomImages is not defined
。
我认为变量randomNumber
应该是数组buttonValues
的长度。
您应该使用课程.abswer
遍历按钮,并为jQuery.each() jQuery.text()设置issue。
请注意,在.each()
循环内部,您应创建randomNumber
,以便为buttons
元素获取不同的文字。
最后,要获取具有不同文本的所有按钮,只需从数组中删除randomNumber
创建索引的元素。
代码:
var buttonValues = ['The letter 1', 'The letter 2', 'The letter 3', 'The letter 4', 'The letter 5'];
$('.answer').each(function() {
var $button = $(this),
randomNumber = Math.floor(buttonValues.length * Math.random());
$button.text(buttonValues[randomNumber]);
$button.attr('id', randomNumber);
// Remove element with index randomNumber
buttonValues.splice(randomNumber, 1);
});
<script src="//ajax.googleapis.com/ajax/libs/jquery/3.2.0/jquery.min.js"></script>
<div class="answers">
<button class="answer" id="1">a</button><br>
<button class="answer" id="2">b</button><br>
<button class="answer" id="3">c</button><br>
<div class="clr"></div>
</div>
答案 2 :(得分:0)
我也错过了变量名称。这里修改了ans -
var buttonValues = [“字母1”,“字母2”,“字母3”,“字母4”,“字母5”]; var randomNumber = Math.floor((buttonValues.length)* Math.random());
self.navigationItem.title = " "
答案 3 :(得分:-2)
您的$(".answer").text(...)
数组未定义,更改按钮文本本身的代码(%% generate random data of given dimensions
d = rand(2,2,1000);
u = rand(1,1000);
%% create your function
myFunction = @(dVal,uVal) dVal.^uVal;
%% perpare u to match the third dimension of d
Ushifted = shiftdim(u,-1); % turns U from 1X1000 to 1X1X1000
)是正确的:)