在javascript中设置标志

时间:2013-10-15 17:10:57

标签: javascript if-statement flags

MODNOTE:我使用{}标签格式化代码,但看起来很糟糕。我现在正试图修复它。

我的具体问题是:

  1. 我正在设置一个带有javascript变量的标志。我这样做的方式是否合理?

  2. 我在这个网站和其他地方对此进行了一些研究,并注意到标志可以在数组中“设置”(1),(2)在隐藏的HTML元素中,(3)在cookie中。我没有看到用.data()设置标志。

  3. 是否有“优雅”,“标准”,“接受”的方式来设置在一个页面上使用的标志,以便在if / else语句中做出决定?你如何在这样的情况下设置旗帜?

  4. 我的代码如下:

    1. “ready”设置标志为“未设置”。

    2. 点击按钮将新信息输入表格 - 标志设置为“添加”

    3. 点击现有数据表格中的一行 - 标志设为“更新”

    4. 如果flag为“add”,则使用ajax添加到表中,如果flag为“update”,则更新db中的行。

    5. CODE

      $(document).ready(function() {
      
        var flagaddupdate = "notset";
      
        $("#onsetdate").mask("99-99-9999");
        $("#entrydate").mask("99-99-9999");       
        $("#uonsetdate").mask("99-99-9999");
        $("#uentrydate").mask("99-99-9999");      
      
        $(function(e) {
        $("#reaction").autocomplete({
               source: [ "none", "rash/hives", "Nausea/vomiting", "Diarrhea", "Headache", "Dizziness" ],
               minlength: 1
                                     });
                      });
      
      
          $("#addintoleranceenterbutton").click(function() {
            flagaddupdate = "add";
            $( "#addintolerancetable" ).dialog(
                                               {height: 320,
                                                 width: 450,
                                                 modal: true}
                                               );
            });//end of add click
      
          $("#patienttable tr").click(function() {
            flagaddupdate = "update";
            $( "#addintolerancetable" ).dialog(
                                               {height: 320,
                                                 width: 450,
                                                 modal: true}
                                               );
            uniqueid = $(this).find("#uniqueid").html();
            $.ajax({
                    type: "POST",
                    url: "readintolerancebackend.php",
                    data: {uniqueid: uniqueid},
                    dataType : 'json',
                    })
                      .done(function(result){
                             $('#namegen').val(result['namegen']);
                             $('#nametrade').val(result['nametrade']);
                             $('#reaction').val(result['reaction']);
                             $('#onsetdate').val(result['onsetdate']);
                             $('#entrydate').val(result['entrydate']);       
                             if ( result['status'] == "Active" )
                                { $('#active').prop('checked',true);}
                                else
                                { $('#inactive').prop('checked',true);}
                                            })
                      .always(function(data, textStatus, jqXHR){
                                                                console.log(data, textStatus, jqXH);
                                                                });
            });//end of update click
      
                $("#submitbutton").click(function() {
                  var namegen    = $('#namegen').val();
                  var nametrade  = $('#nametrade').val();
                  var reaction   = $('#reaction').val();
                  var onsetdate  = $('#onsetdate').val();
                  var entrydate  = $('#entrydate').val();
                  var status     = $('input:radio[name=status]:checked').val();
      
                if (flagaddupdate == "add")
                  {
                   $.ajax({
                           type: "POST",
                           url: "addintolerancebackend.php",
                           data: {
                                  namegen: namegen, nametrade: nametrade, reaction: reaction,
                                  onsetdate: onsetdate, entrydate: entrydate, status: status
                                  }
                           })
                             .done( function( msg ) {alert( "Intolerance Added" + msg );
                                               window.location = "intolerance.php";
                                               })
                             .always(function(data, textStatus, jqXHR){
                                                                 console.log(data, textStatus, jqXHR);
                                                                 });  
                  }
                  else
                  { do another ajax call};
      

0 个答案:

没有答案