2014-01-08 60 views
0

我在這裏有一個問題,因爲當我保存我的數據時,我可以得到選項框的值,但點擊編輯按鈕後它的相同..我想要做的是它將成爲與價值的選項框顯示第一如何返回選擇選項中的數據

我的繼承人小提琴:http://jsfiddle.net/te2wF/32/

繼承人我的代碼:

function Edit(){ 
    var par = $(this).parent().parent(); //tr 
    var tdName = par.children("td:nth-child(1)"); 
    var tdAge = par.children("td:nth-child(2)"); 
    var tdGender = par.children("td:nth-child(3)"); 
    var tdButtons = par.children("td:nth-child(4)"); 

    tdName.html("<input type='text' id='txtName' value='"+tdName.html()+"'/>"); 
    tdAge.html("<input type='text' id='txtage' value='"+tdAge.html()+"'/>"); 
    tdGender.html(tdGender.html()); 
    tdButtons.html("<input type='button' value = 'Save' class='btnSave'/><input type='button' value='Delete' class='btnDelete'/>"); 

    $(".btnSave").bind("click", Save); 
    $(".btnEdit").bind("click", Edit); 
    $(".btnDelete").bind("click", Delete); 
}; 
+0

您是否嘗試過重新構建整個'select'結構? –

+0

將這些事件綁定到* Edit()裏面的函數*。這是一個問題,即使它不是*問題。 – Trojan

+0

@JLPop - 我就是這麼做的:http://jsfiddle.net/DerekL/PHj7a/ –

回答

0

Working Demo

解決少數的問題:

1.已更新Edit函數提供了一個選擇選項來編輯選擇上次選擇的選擇。

function Edit() { 
     var par = $(this).parent().parent(); //tr 
     var tdName = par.children("td:nth-child(1)"); 
     var tdAge = par.children("td:nth-child(2)"); 
     var tdGender = par.children("td:nth-child(3)"); 
     var tdButtons = par.children("td:nth-child(4)"); 

     tdName.html("<input type='text' id='txtName' value='" + tdName.html() + "'/>"); 
     tdAge.html("<input type='text' id='txtage' value='" + tdAge.html() + "'/>"); 
     if(tdGender.html().toLowerCase() == "female") { 
      tdGender.html("<select class='gender'><option></option><option>Male</option><option selected>Female</option></select>"); 
     } else { 
      tdGender.html("<select class='gender'><option></option><option selected >Male</option><option >Female</option></select>"); 
     } 
     tdButtons.html("<input type='button' value = 'Save' class='btnSave'/><input type='button' value='Delete' class='btnDelete'/>"); 

     $(".btnSave").bind("click", Save); 
     $(".btnEdit").bind("click", Edit); 
     $(".btnDelete").bind("click", Delete); 
    }; 

2.你的代碼是不是能找到isNumberKey功能。所以,我把它移到了範圍之外,以便它可以從任何地方訪問。

在你Add功能,select標記包含一個額外>。在我的代碼中刪除它。

0

這裏有:http://jsfiddle.net/edgarinvillegas/te2wF/33/

主要2個變化是我們存儲的選擇HTML的變種:

var genderSelectHtml = "<select class='gender'><option></option><option value='Male'>Male</option><option value='Female'>Female</option></select>"; 

然後編輯時,再現了選擇:

$(genderSelectHtml).val(tdGender.html()).appendTo(tdGender.empty()); 

歡呼聲中,來自拉巴斯,玻利維亞

相關問題