2013-10-04 83 views
0

單擊「添加員工」鏈接時,必須顯示包含字段的ppopup以接受用戶詳細信息。我嘗試了很多東西,但最終打開了一個新窗口,而不是彈出窗口。如何讓下面的代碼在一個彈出窗口或對話框或ModalPopup工作使用Google Closure的ModalPopup或對話框

function newUsr() { 
    var li = new goog.ui.LabelInput('Employee ID'); 
    li.render(goog.dom.getElement('d')); 
    var li1 = new goog.ui.LabelInput('First Name'); 
    li1.render(goog.dom.getElement('d1')); 
    var li2 = new goog.ui.LabelInput('Last Name'); 
    li2.render(goog.dom.getElement('d2')); 
    var li3 = new goog.ui.LabelInput('Email Id'); 
    li3.render(goog.dom.getElement('d3')); 
    var li4 = new goog.ui.LabelInput('Date Of Birth(yyyy-mm-dd)'); 
    li4.render(goog.dom.getElement('d4')); 
    var li5 = new goog.ui.LabelInput('Date Of Joining(yyyy-mm-dd)'); 
    li5.render(goog.dom.getElement('d5')); 
    var li6 = new goog.ui.LabelInput('Phone'); 
    li6.render(goog.dom.getElement('d6')); 
    var fb1 = new goog.ui.Button('Submit', goog.ui.FlatButtonRenderer 
      .getInstance()); 
    fb1.render(goog.dom.getElement('fb1')); 
    goog.events.listen(fb1, goog.ui.Component.EventType.ACTION, function(e) { 
     alert(" " + li.getValue() + " " + li1.getValue() + " "); 
     var request = new goog.net.XhrIo(); 
     var data = new goog.Uri.QueryData(); 
     data.set('emp_id', li.getValue()); 
     data.set('first_name', li1.getValue()); 
     data.set('last_name', li2.getValue()); 
     data.set('email', li3.getValue()); 
     var d1 = new Date(li4.getValue()); 
     var d2 = new Date(li5.getValue()); 
     data.set('dob', li4.getValue()); 
     data.set('doj', li5.getValue()); 
     data.set('phone', li6.getValue()); 
     request.send('newUser', 'POST' , data.toString()); 
    }); 
} 
Date.prototype.yyyymmdd = function() {   

    var yyyy = this.getFullYear().toString();          
    var mm = (this.getMonth()+1).toString(); // getMonth() is zero-based   
    var dd = this.getDate().toString();    

    return yyyy + '-' + (mm[1]?mm:"0"+mm[0]) + '-' + (dd[1]?dd:"0"+dd[0]); 
}; 

回答

0

請告訴我們你是如何創建和處理「添加員工」的鏈接,否則很難回答的問題。如果將goog.events.EventType.CLICK事件的事件偵聽器附加到鏈接,並且該鏈接的默認行爲是打開一個新窗口(即它具有target屬性),則可以使用preventDefault()阻止默認行爲。在您的事件處理程序中,您可以打開一個自定義對話框使用goog.ui.Popupgoog.ui.Dialog

例如:

<a href="someurl" id="add">add employee</a> 

和你做

goog.events.listen(document.getElementById('add'), goog.events.EventType.CLICK, function(e) {e.preventDefault(); e.stopPropagation(); var dlg = new goog.ui.Dialog(); ...});