Javascript代码失败

Javascript code fails

本文关键字:失败 代码 Javascript      更新时间:2023-09-26

代码似乎在if(var i = 1;){工作失败,如果if(var i = 1;){等被删除,只有item.text("Options for your number " + i +"th $Name");在那里。

<script type='text/javascript'>//<![CDATA[
$('#Quantity').keyup(function () {
    var textualValue = $(this).val();
    var numericValue = parseInt(textualValue, 10);
    if (!isNaN(numericValue)) {
        modifyDOMWithNumber(numericValue);
    } else {
        modifyDOMWithNumber(0);
    }
});
function modifyDOMWithNumber(number) {
    var ul = $('ul#ListToAlter').empty();
    var item;
    for (var i = 1; i <= number; i++) {
        item = $("<li>");
        if(var i = 1;){
        item.text("Options for your 1st $Name");
        }elsif(var i = 2;){
        item.text("Options for your 2nd $Name");
        }elsif(var i = 3;){
        item.text("Options for your 3rd $Name");
        }else{
        item.text("Options for your number " + i +"th $Name");
        }
        ul.append(item);
    }
}
//]]></script>

去掉分号

if(var i = 1){

=是赋值运算符,==是比较运算符

elsif应该是else if注意空格

应该是这样的

for (var i = 1; i <= number; i++) {
    item = $("<li>");
    if (i == 1) {
        item.text("Options for your 1st $Name");
    }
    else if(i == 2) {
        item.text("Options for your 2nd $Name");
    }
    else if(i == 3) {
        item.text("Options for your 3rd $Name");
    } else {
        item.text("Options for your number " + i + "th $Name");
    }
    ul.append(item);
}

正确的比较方法是if (i == 1) { /* do stuff */ }。当使用单个"="符号时,你是在给变量赋值,而不是比较它的值。

if (i == 1) { /* do stuff */ }
else if (i == 2) { /* do some other stuff */ }
else { /* if none of the above work */ }

from

if (var i = 1;)

if (i == 1)

首先语法不正确

其次,(i = 1)i一个值,不能用1测试它

= -赋值运算符

== - =

=== -完全等于(value and type)

var i = 1;是一个赋值操作符(无论如何都不应该有分号)。你想要的是if (i==1){,等等其他数字。试着改变它,如果你需要更多的帮助,告诉我:)

当对不同的值计算相同的变量时,您可以选择使用switch语句。所以你可以这样重写你的代码:

switch(i)
{
    case 1:
    {
        item.text("Options for your 1st $Name");
        break;
    }
    case 2:
    {
        item.text("Options for your 2nd $Name");
        break;
    }
    case 3:
    {
        item.text("Options for your 3rd $Name");
        break;
    }
    default:
    {
        item.text("Options for your number " + i +"th $Name");
    }
}

应该是

if (var i==1)

而不是i=1

需要比较值,并且需要至少2个=符号