2010-05-24 32 views
0

我有一個對話框的形式,當我打開它時,我有按鈕「添加任務」,我想保留這個「名稱」,當我從空大小寫,但我想打開一個已經存在的任務時,有一個名爲「編輯此任務」的按鈕。不同的按鈕的名稱在jQuery對話框的開頭

我也想用這個按鈕發送表單,當我按下回車鍵時,不管我在表單上的什麼位置。

謝謝。

回答

1
$('.ajouter-tache') 
     .click(function() { 
     if($(this).attr('id_tache')!=""){ 
      $('.ui-dialog-buttonpane button:eq(0) .ui-button-text').each(function(e, f){ 
       $(f).html('Modifier la tache'); 
      }) 
     } 
     else { 
      $('.ui-dialog-buttonpane button:eq(0) .ui-button-text').each(function(e, f){ 
       $(f).html('Ajouter une tache'); 
      }) 
     }; 
    }) 

這裏是我做的,它的工作原理,但因爲我是初學者,也沒有丟失的時間來介紹jQuery它那種很爛,尤其是選擇冗餘度和每個至極是無用的工作(但我不知道如何只拿那個元素。)

0

您需要添加一些關於'編輯此任務'如何工作的更多信息,因爲從服務器端到客戶端有幾個不同的實現(在解析時填充?表單ajax或不是? )

如果您在提交事件中運行實際的「提交」工作,則可以利用用戶在表單中按Enter鍵時的優勢。 (除了當然的文本區)

<form id="myForm" onSubmit="return yourCoolSubmitFunction();" > 

$(function() { 
    $('#myForm').submit(function() { 
     // code here that can validate or simply 
     return true; // submit the form 
     // return false won't submit, which is good for validating input 
    }); 
}); 

至於如果窗體被填充爲通過服務器端代碼中的「編輯表單」,那麼你可以在按鈕上的文字只需更改按鈕標籤,然後在第一次生成html時。

如果是ajax,則可以在加載表單數據時更新按鈕。

如果我還沒有擊中亞的頭部,也許添加一個表單元素來檢查?像<input type="hidden" name="isEdit" value="1" />如果在編輯模式下,你可以檢查? if($('#myForm input[name=isEdit]').val() == 1) ...

0

好了,對不起,我沒想到我的代碼是必要的,但看起來是^^

$("#dialog-form").dialog({ 
      autoOpen: false, 
      height: 560, 
      width: 400, 
      modal: false, 
      buttons: { 
       'Add task': function() { 
        $(".ajax").trigger('submit'); 
       }, 
       'Back': function() { 
        $("#dialog-form").dialog('close'); 
       } 
      }, 
      open: function() { 
       $(this).parents('.ui-dialog-buttonpane button:eq(0)').focus(); 
      }, 
      close: function() { 
       allFields.val('').removeClass('ui-state-error'); 
      } 
     }); 

$(".ajax").submit(
     function(e) { 
     var datas = $(this).serialize();   
     $.ajax({ 
      type: 'POST',  // envoi des données en POST 
      url: 'Planning.php?action=ajoutTache',  
      data: datas,  // sélection des champs à envoyer 
      success: function() { 
       $("#dialog-form").dialog('close'); 
       location.reload(); 
      } 
     }); 
     return false; // Pour empêcher le submit vers la page 'action' 
    }); 

我想按鈕「添加任務」變成「編輯任務」的時候,任務已經存在。