2013-10-30 21 views
0

我想编辑从$.get返回的data。我被困在如何应用新创建的inputname,我相信这是$(data)的问题。

id = '12'; 
$.get('/page.php?id='+id, function(data) { 

     // split input name by hyphen 
     m = $(data).find('input').attr('name').split('-'); 

     // build new input name attribute 
     inputname = m[0] + '-' + id + '-' + m[2] + '-' + m[3] + '-' + m[4] + '-' + m[5]; 

     // apply new input name to data ??? this part I'm stuck on. 
     $(data).find('input').attr('name', inputname); 

}); 
+0

什么是'data'?它应该是什么,你确定你得到了你想要的东西?记录它的地方。 – Mateusz

回答

1

尝试

id = '12'; 
$.get('/page.php?id=' + id, function (data) { 
    var $data = $(data); 

    // split input name by hyphen 
    $data.find('input').attr('name', function (idx, name) { 
     var m = name.split('-'); 
     var inputname = m[0] + '-' + id + '-' + m[2] + '-' + m[3] + '-' + m[4] + '-' + m[5]; 
     return inputname; 
    }); 

    //be careful that the contents of `data` still will not have the updated name, but the contents of the jQuery wrapper $data will have the updated name 
});