Ajax - 在Wordpress中调用了两次......我找到了其他答案,但没有找到解决方案

时间:2017-06-17 11:06:46

标签: javascript jquery ajax wordpress

嘿,我尝试过这么多,但还没找到解决办法。我尽可能地简化了我的解决方案。切换到'' (html元素)所以它可以从类更改。 (实际上,这是开始做更多事情的开始)

我把两个' console.log'在检查器中进行一种调试的行,你会发现它会触发两次。

如果我将enque-line置于评论中,它会触发一次,但我会收到一条令人讨厌的错误消息。

希望有人可以帮助我, 提前致谢



<script>
/* functions.js */
jQuery('td').click(function () {
     if (jQuery(this).hasClass('not_active')) {

            jQuery(this).removeClass('not_active').addClass('active');
            toggle=1;
            console.log('toggle ----> '+ toggle);
            
        }
        else {
               jQuery(this).removeClass('active').addClass('not_active');
               toggle=0;
               console.log('toggle ----> '+ toggle);
        }

         jQuery.ajax({
                type: 'POST',
                url: ajaxurl,
                dataType:'json',
                data: { action: 'save_Settings',
                        App_active: toggle
                },
                success: function (response) {
                    console.log(WorkingHoursAction.success);
                }
        });
});

</script>
&#13;
/* style.css */
.Working{
    color:white;
    background-color: green;
}
.NotWorking{
    background-color: white;
    color:black;
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table class="table">
      <thead>
          <tr>
              <th></th>
              <th class="hidden-xs hidden-sm">#</th>
              <th>Actie</th>
          </tr>

      </thead>
      <tbody id="Confirmed">
          <tr>
              <?php for($rw=0;$rw<7;$rw++){
                           
                          ?><td class="text-center day-hour notWorking" ><?php echo $rw; ?></td><?php
                    }
               ?>
                                     
        </tr>
          </tbody>
    
</table>


<?php

function OIC_enqueue(){ 
   wp_enqueue_script('OCI_jquery', plugins_url('js/functions.js',__FILE__),array('jquery'),'1',true);
   wp_enqueue_style('OCI_style',plugins_url('css/style.css',__FILE__));
    
   wp_enqueue_script('OCI_ChangeToggle',plugins_url('js/functions.js',__FILE__),
               array('jquery'),'1',true);
   wp_localize_script('OCI_ChangeToggle','ToggleAction',array(
              'security'   => wp_create_nonce('ChangeWhours'),
              'success'   => 'ChangeWorkinghours OK'));
}

add_action('admin_enqueue_scripts','OIC_enqueue');

function ToggleAction(){
    
        global $wpdb;

        $tblName = 'Settings';
        $active=stripslashes_deep($_POST['App_active']);

           $Data = array( 'App_active'        => $active );

            $condition = array( 'id'=> 1);
            
            $wpdb->update( 'WorkingTimes',  $WorkingHoursData, $condition, array('%s',  '%d', '%d' ), array( '%s','%d' ) );
            exit;
}
add_action('wp_ajax_save_Settings','ToggleAction');

?>
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:0)

根据您的代码,您似乎已添加js/functions.js两次。

请你检查一下。