2014-09-05 64 views
1

我的看法是有點像這樣的:在查看減少代碼的大小 - 笨

$(document).ready(function() { 
    var controller = 'settings'; 
    var base_url = '<?php echo site_url(); ?>'; 
    var currentuserid = <?php echo $current_user; ?>; 
    $('.mess_disable').click(function() { 
     $.ajax({ 
      'url' : base_url + '' + controller + '/enablemessagenotification', 
      'type' : 'POST', 
      'data' : {'currentuserid' : currentuserid }, 
      'success' : function(data){          
        $('.mess_enable').show(); 
        $('.mess_disable').hide(); 
        location.reload(); 
      } 
     }); 
    }); 

我的控制器

function enablemessagenotification() 
    { 
    $userid = $this->input->post('currentuserid'); 

    $data = array(
       'email-message'=>'0', 
      ); 

    $this->db->where('id',$userid); 
    $this->db->update('users',$data);  
    } 

下工作正常

Message : Enable (When I click Enable. Enable will be disables and Disable will be reflected, Same process for all the three) 
subscribe : Disable (clickable) 
Email : Enable (clickable) 

我的腳本。

這裏我的問題是,我正在寫幾乎寫6功能和6腳本(啓用和禁用)。所有文字都太難了。以任何方式減少代碼是可能的。

回答

2

如果我理解你的代碼正確,你可以做以下內容:

- 對於腳本,你可以在每一個按鈕添加同一類,這樣可以顯示或只用一個腳本隱藏起來。

-As你可以添加你在一個HTML隱藏輸入需要爲你的數據庫的參數,你可以用按鈕通過它在PHP如下顯示功能:

<input type="hidden" name="email-message" id="mess" value=""> 
    <button id="mess" class="same-class">Message</button> 

並與上述信息已經傳遞到PHP你可以使用一個功能,最有可能的開關,以服務所有的三個按鈕。