2016-03-10 65 views
0

當代碼模板助手中調用功能restoreFromSerialize時,此代碼嘗試設置輸入文本框的值。
它不會在輸入文本框中插入elementValue,即使在觸發console.log(elementName+" "+elementValue);時瀏覽器控制檯中的值已經過驗證。由於代碼中輸入文本的設置值

function restoreFromSerialize() { 
 
    formValues.split('&').forEach(function (doc) { 
 
    var elementName = doc.split('=')[0]; 
 
    var elementValue = doc.split('=')[1]; 
 
    if($('[name=elmentName]').attr('type') == 'radio') { 
 
     $('[name=elementName]').prop('checked', true); 
 
    } else { 
 
     console.log(elementName+" "+elementValue); 
 
     $('[name=elementName]').val(elementValue); //<<<<< NOT WORKING 
 
    } 
 
    }) 
 
}

+0

你的代碼段不工作,你缺少html – guradio

回答

2

重新分解整個代碼:

function restoreFromSerialize(formValues) { 
    formValues.split('&').forEach(function (doc) { 
    var splited = doc.split('='); 
    var elementName = splited[0]; 
    var elementValue = splited[1]; 
    if($('[name="'+elementName+'"]').is(':radio')) { 
     $('[name="'+elementName+'"]').prop('checked', true); 
    } else { 
     console.log(elementName+" "+elementValue); 
     $('[name="'+elementName+'"]').val(elementValue); //<<<<< NOT WORKING 
    } 
    }); 
} 

你的代碼是不工作是原因,你需要傳遞變量的選擇不是字符串字面。

相關問題