javascript if 语句传递真实值

标签 javascript jquery

这是数据,

<tr>
    <td>
    <input type="checkbox" class="internal_case">
    </td>
    <td style="display:none;">0</td>    
</tr>

您必须看到的是第二个 td 带有“0”值。

现在我编写了这样的 JavaScript 代码,

$("#invited_table tr").each(function() {
                var memberFlag = false; // if memberFlag = false -> internal, memberFlag = true -> external
                var internal = {
                    id : "",
                    firstname : "",
                    lastname : "",
                    email : "",
                    moderator : "",
                };
                var external = {
                    id : "",
                    firstname : "",
                    lastname : "",
                    email : "",
                    timezone : ""
                };
                $(this).find('td').each(function(index, obj) {
                    //console.log($(this).find('input').prop("checked",true));
                    //console.log(obj.innerHTML);
                    //console.log($('#invited_table :radio:checked'));
                    // check that the radiobutton is checked
                    //console.log($(this).find('input').is(':checked'));
                    //console.log(obj.innerHTML);
                     switch(index) {
                        case 1:
                        //id seperate condition to external=0 or internal others
                        if(obj.innerHTMl=="0"){
                            memberFlag = true; // memberflag true means, external
                            external.id = obj.innerHTML;
                        }else{
                            internal.id = obj.innerHTML;
                        }       
                            break;
                        // case 1:
                            // //id
//                              
                            // invitedPeopleHTML += "<td style='display:none;'>" + obj.innerHTML + "</td>";
                            // attendee.id = obj.innerHTML;
                            // // classify value, if it is internal, put member
                            // invitedPeopleHTML += "<td>Member</td>";
                            // break;
                        case 3:
                            //firstname
                            if(!memberFlag){
                                //internal
                                internal.firstname = obj.innerHTML;
                            }else{
                                //external
                                external.firstname = obj.innerHTML;
                            }

                            break;
                        case 4:
                            //lastname
                            if(!memberFlag){
                                //internal
                                internal.lastname = obj.innerHTML;
                            }else{
                                //external
                                external.lastname = obj.innerHTML;
                            }
                            break;
                        case 5:
                            //email
                            if(!memberFlag){
                                //internal
                                internal.email = obj.innerHTML;
                            }else{
                                //external
                                external.email = obj.innerHTML;
                            }
                            break;
                        // // if internal, timezone doesn't have to be inserted.
                        // // case 5://timezone
                        // // invitedPeopleHTML += "</tr>";
                        // // attendee.timezone  = obj.innerHTML;
                        // // break;
                        case 6:
                            if(!memberFlag){
                                // only check the radion button, if it is internal
                                var checked = $(this).find('input').is(':checked');
                                internal.moderator = checked;
                            }
                            break;
                        case 8:
                            if(memberFlag){
                                // only check the timezone, if it is external
                                external.timezone = obj.innerHTML;
                            }
                        break;
                     }

                 });
                // temp paused
                //add_inviteList(attendee.id, attendee.firstname, attendee.lastname, attendee.email);
                if(!memberFlag){
                    attendee_list.push(internal);   
                }else{
                    attendee_list.push(external);
                }

            });

代码很长,但我们只需集中精力

case 1:
                        //id seperate condition to external=0 or internal others
                        if(obj.innerHTMl=="0"){
                            memberFlag = true; // memberflag true means, external
                            external.id = obj.innerHTML;
                        }else{
                            internal.id = obj.innerHTML;
                        }      

我确实检查了 obj.innerHTML 是 0!所以 if 语句必须放在 if 条件中,但它要放在 else 条件中:(

这是调试屏幕截图。

enter image description here

正如你在这里看到的,这肯定是真的!,但它会变成错误的条件。伙计,这让我发疯:(

最佳答案

您的 if 行中有一个拼写错误 - obj.innerHTMl(L 是小写 - 应该是大写):

有效:

if(obj.innerHTML=="0")

关于javascript if 语句传递真实值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20326497/

相关文章:

javascript - 与 D3.js 交互作用力

javascript - 如何使用 php 读取图片上的值?

javascript - JQuery 文件附件 : TypeError: $(. ..) 为空

php - 对表单元素集的多个 AJAX 请求

javascript - 无法使用 getElementByID() 将数据 "innerHTML"添加到 <div> 标记

javascript - 如何获取父对象的函数(NodeJS模块)

javascript - Golang html模板无法调用html文件中的javascript文件

c# - ASP.NET -> 同步调用 JavaScript 函数

Jquery Accordion 删除边框顶部

javascript - 替换 jQuery 中与 RegExp 匹配的内容