I want to change field caption on the page but my $label is undefined

  Kiến thức lập trình

I want to look for the field using in the loop and change text but but my $label is undefined all the time.

//MY Code
function changeAwardCaptions(AwardNotificationType) {
    try { 
        const fields_Captions_Change = [
            {
                "type": "1",
                "arr": [
                    {
                        "fieldID": "cf_1693301",
                        "fieldText": "Email subject"
                    },
                    {
                        "fieldID": "cf_1693302",
                        "fieldText": "Award letter cover letter"
                    },
                    {
                        "fieldID": "cf_1693303",
                        "fieldText": "Award letter body"
                    }
                ]
            },
            {
                "type": "2",
                "arr": [
                    {
                        "ModificationType": "1",
                        "arr": [
                            {
                                "fieldID": "cf_1693301",
                                "fieldText": "Early Termination Email subject"
                            },
                            {
                                "fieldID": "cf_1693302",
                                "fieldText": "Early Termination Award letter cover letter"
                            },
                            {
                                "fieldID": "cf_1693303",
                                "fieldText": "Early Termination Award letter body"
                            }
                        ]
                    },
                    {
                        "ModificationType": "2",
                        "arr": [
                            {
                                "fieldID": "cf_1693301",
                                "fieldText": "Revised Budget Email subject"
                            },
                            {
                                "fieldID": "cf_1693302",
                                "fieldText": "Revised Budget Award letter cover letter"
                            },
                            {
                                "fieldID": "cf_1693303",
                                "fieldText": "Revised Budget Award letter body"
                            }
                        ]
                    },
                    {
                        "ModificationType": "3",
                        "arr": [
                            {
                                "fieldID": "cf_1693301",
                                "fieldText": "Supplement Request Email subject"
                            },
                            {
                                "fieldID": "cf_1693302",
                                "fieldText": "Supplement Request Award letter cover letter"
                            },
                            {
                                "fieldID": "cf_1693303",
                                "fieldText": "Supplement Request Award letter body"
                            }
                        ]
                    },
                    {
                        "ModificationType": "4",
                        "arr": [
                            {
                                "fieldID": "cf_1693301",
                                "fieldText": "Other Email subject"
                            },
                            {
                                "fieldID": "cf_1693302",
                                "fieldText": "Other Award letter cover letter"
                            },
                            {
                                "fieldID": "cf_1693303",
                                "fieldText": "Other Award letter body"
                            }
                        ]
                    }
                ]
            }
        ];

        debugger;

        if (AwardNotificationType == 1) {
            fields_Captions_Change.filter(x => x.type == AwardNotificationType).map(y => y.arr).forEach((item) => {
                const $label = $(`label[for="${item.fieldID}"]`);
                const labelText = $label.text().trim();
                $label.text(item.fieldText);
            });
        } else if (AwardNotificationType == 2) {
            const getSelected = $('input[name="cf_1696086"]:checked').val();
            if(!!getSelected){
                (fields_Captions_Change.filter(w => w.type == AwardNotificationType).map(y => y.arr)[0]).filter(z => z.ModificationType == getSelected).map(z => z.arr).forEach((item) => {
                    const $label = $(`label[for="${item.fieldID}"]`);
                    const labelText = $label.text().trim();
                    $label.text(item.fieldText);
                });
            }
            
        }
    } catch (ex) {
        alert("Error in changeCaptions(): " + ex.toString());
        return false;
    }
}
ALL fields DOM is likethe foloowing:
<tr id="cf_1693301_tr">
   <td id="cf_1693301_td" ng-non-bindable="" colspan="2" class="Form FormTop">
      <div id="cf_1693301_label_tr"><label for="cf_1693301"><span class="Required" title="Required">* </span>Email subject</label></div>
      <input type="text" aria-required="true" class="Hundred" style="" id="cf_1693301" name="cf_1693301" value="" aria-label="Email subject" autocomplete="off"><i class="fas fa-history fa-lg text-help Pointer" onclick="openinmwin('/s_cusfieldhistory.jsp?ismwin=1&appid=105214&objectid=16379841&fieldid=1693301&versionid=0');" id="his_1693301" title="" aria-label="History" data-original-title="History" tabindex="0" role="img"></i><input type="hidden" id="sec_cf_1693301" name="sec_cf_1693301" value="fXELRH9XZANMGFEdekxcYnNke3txR19pAlRfaQYCDTMLBwg~">
   </td>
</tr>

LEAVE A COMMENT