2016-04-15 26 views
0

目前的情況:編輯輸入字段一起而不是單獨

現在我有在其中您可以編輯和保存輸入字段的每個記錄的形式。即名,姓,電子郵件等。 我沒有得到任何錯誤,一切工作正常。

要求:

現在我要救&編輯firstNamelastName輸入字段在一起反而是編輯和單獨保存firstNamelastName輸入字段的內容。 現在他們都是不同的輸入ID。

問:

我怎樣才能通過調用firstNamelastName同一類,如果我想在同一時間有一個按鈕來編輯這些實現這一目標?

這是一種方法嗎?謝謝...

代碼:

$("#inputFirstName,#inputLastName,#inputEmailAddress,#inputPassword,#inputZipCode").on('keypress',function(e){ 
     if(e.which == 13) { 
      var field = $(this).attr("id"); 
      var data = {}; 
      data['ajax']=true; 
      data[$('#'+field).attr('name')]=$('#'+field).val(); 
      $.ajax({ 
        method: "POST", 
        url: this.form.action, 
        data: data 
       }) 
      .done(function(msg) { 
       if(msg['status']=='fail'){ 
        $('#errormsg span').html(msg['msg']); 
        $('#errormsg').show(); 
       } 
       if($('#'+field).attr('name')=='game_user_profile[userinfo][firstName]') { 
        $('#userfirstname').text($('#'+field).val()); 
       } 
       if($('#'+field).attr('name')=='game_user_profile[userinfo][lastName]') { 
        $('#userlastname').text($('#'+field).val()); 
       } 
      }); 
      $('#'+field+'-edit').show(); 
      $('#'+field+'-save').hide() 
      $('#'+field).attr('disabled',true); 
     } 
    }); 
+1

它是一個簡單的任務。爲'firstname'和'lastname'創建一個按鈕,然後單擊該按鈕將兩個字段數據一起傳遞到一個對象中,並根據需要執行操作。 –

回答

1

首先的。保存每個按鍵都不好,並會耗盡您的服務器。 我推薦你使用onChange或提交提交按鈕

提交按鈕是一個更好的解決方案。

讓我們假設我們有這個網站:

<form id="updateForm"> 
    <input type="text" id="firstN" name="firstName" data-val="Ris" value="Ris"> 
    . 
    . 
    . 
    <input type="button" value="submit" id="goBtn"> 
</form> 

第一組數據-VAL等於值 然後,在JavaScript

$("#goBtn").click(function(){ 

    var data = {}; 
    data["ajax"] = true; 
    $("#updateForm input").each(function(){ 
     var $this = $(this); 
     var type = $this.attr('type'); 
     if(type != "button" && $this.val() != $this.attr("data-val")) 
      data[$this.attr("name")] = $this.val(); 
    }); 

    if(data.length > 0){ 
      $.ajax({ 
        method: "POST", 
        url: this.form.action, 
        data: data 
       }) 
      .done(function(msg) { 
       if(msg['status']=='fail'){ 
        $('#errormsg span').html(msg['msg']); 
        $('#errormsg').show(); 
       } else { 
        $.each(data, function(index, value){ 
         $('updateForm input[name="'+index+'"]').attr("data-val", value); 
        }); 
       } 
       // then do things 
      }); 
    } 

}); 

首先它會檢查每變化輸入(data-val保持原始值),並將其添加到數據中,如果有任何更改,則調用ajax,如果它成功,則更新每個更改值的data-val,否則將其留給另一個提交

相關問題