0

コードの大きなブロックを許してください。

そのため、いくつかのコンテンツを読み込んでから、ダイアログを表示しています。押すボタンに応じて、いくつかのことを行います。スケジュールの保存ブロックと送信のキャンセル ブロックの間に矛盾があるようです

このコードは両方のブロックで同じです

var dt = $(this).find("input[type=text]").val();
var id = $(this).find("input[type=text]").attr("id");
var CustomObjectKey = id.split("_")[1];
var alt = $(this).find("input[type=text]").attr("alt");

ただし、Cancel send ブロックでは id が定義されていないため、分割が爆発しています。

誰かが私が間違っていることをmwに教えてもらえますか?

$("#ActionContainer").load(wsUrl, { Function:"BuildScheduleDialog", ArticleID:ArticleID}, function(){
                var Subject = $(this).find("#hdnSubject").val();
                $("#ActionContainer").dialog({
                    title: "Edit Schedule: " + ArticleTitle,
                    height: 'auto',
                    width: 'auto',
                    modal: true,
                    buttons: {
                        'Cancel': function() {

                            $(this).dialog('close');
                        },
                        'Save Schedule': function() {
                            var that = $(this);
                            var table = $("#tblSchedule");
                            var parameterArray = [];

                            //loop each row of the Schedule table to get the parameters
                            $(table).find("tbody>tr").not(':first').each(function () {
                                var dt = $(this).find("input[type=text]").val();
                                var id = $(this).find("input[type=text]").attr("id");
                                var CustomObjectKey = id.split("_")[1];
                                var alt = $(this).find("input[type=text]").attr("alt");

                                //alert(dt + " " + id + " " + CustomObjectKey + " " + alt);
                                if(dt != "" && alt === "")
                                {
                                    parameterArray.push({Region: $(this).find("#spRegion").text(), Date: dt, ArticleTitle: ArticleTitle ,ArticleID: ArticleID, PublicationTypeID: PublicationTypeID, CustomObjectKey: CustomObjectKey, Subject: Subject});
                                }
                            });

                            if(parameterArray.length > 0)
                            {
                                ShowWaitIcon();
                                $("#results").load(wsUrl, { Function:"Schedule", Action: "Edit", Items: JSON.stringify(parameterArray)}, function(){
                                    $("#results").fadeIn(1000);
                                    $('#results').delay(3000).fadeOut(3000);
                                    $(that).dialog('close');
                                    LoadMainTable();
                                });
                            }
                            else
                            {
                                alert("Please select at least one Item to Schedule");
                            }

                        },
                         'Cancel Send': function() {
                         if(confirm("Are you sure you want to cancel this entire send?"))
                         {
                             var that = $(this);
                             var table = $("#tblSchedule");
                             var parameterArray = [];

                             var status = "";
                             $(table).find("tbody>tr").each(function () {                                    
                                var dt = $(this).find("input[type=text]").val();                                     
                                 var id = $(this).find("input[type=text]").attr("id");                                     
                                 var CustomObjectKey = id.split("_")[1];                                     
                                 var alt = $(this).find("input[type=text]").attr("alt");                                                                         
                                parameterArray.push({Region: $(this).find("span").text(), Date: dt, ArticleTitle: ArticleTitle ,ArticleID: ArticleID, PublicationTypeID: PublicationTypeID, CustomObjectKey:CustomObjectKey});
                             });

                             /*ShowWaitIcon();
                             $("#results").load(wsUrl, { Function:"CancelAllSchedule", Items: JSON.stringify(parameterArray)}, function(){
                                $("#results").fadeIn(1000);
                                $('#results').delay(3000).fadeOut(3000);
                                $(that).dialog('close');
                                LoadMainTable();
                             });

                         */}
                        }
                    },open: function(event, ui){
                        $(".datePicker", "#ActionContainer").datetimepicker({
                            timeFormat: 'hh:mm tt',
                            showTimezone: true
                        });
                        BindCheckboxes();
                    }
                });
            });
4

1 に答える 1

0

$(table).find以下を justに置き換えてみてくださいtable.find(すでに宣言しているためtable = $("#tblSchedule")

                         var table = $("#tblSchedule");
                         var parameterArray = [];

                         var status = "";
                         $(table).find("tbody>tr").each(function () {                                    
                            var dt = $(this).find("input[type=text]").val();                                     
                             var id = $(this).find("input[type=text]").attr("id");                                     
                             var CustomObjectKey = id.split("_")[1];                                     
                             var alt = $(this).find("input[type=text]").attr("alt");                                                                         
                            parameterArray.push({Region: $(this).find("span").text(), Date: dt, ArticleTitle: ArticleTitle ,ArticleID: ArticleID, PublicationTypeID: PublicationTypeID, CustomObjectKey:CustomObjectKey});
                         });

trまた、からそれぞれを選択しようとしている場合は$("#tblSchedule")$("#tblSchedule").find("tr")より良いセレクターになる可能性があります。

于 2013-02-08T01:41:40.587 に答える