2013-03-26 47 views
0

我有一个变量,它具有一些html数据。我想从该HTML中提取一个td如何从html中提取td

如果我给alert(returnData)它给出以下输出。

<tr class='addedrow'> 
    <td id="abc">DOM-001 
     <input id="bill_details_1_narration" name="bill_details[1][narration]" type="hidden" /> 
    </td> 
    <td>DOMSTAL O CAPSULES</td> 
    <td> 
     <select id="item_details_batch_number" name="item_details[batch_number]"> 
      <option value="47">BATCH-830</option> 
     </select> 
    </td> 
    <td> 
     <input id="bill_details_quantity" name="bill_details[quantity]" size="2" type="text" value="2.0" /> 
    </td> 
    <td> 
     <input id="item_details_cost_price" name="item_details[cost_price]" size="2" type="text" value="23391.0" /> 
    </td> 
</tr> 

在这里,我想从bill_details_1_narration提取价值1

我该如何做到这一点?

+1

而不是试图解析〜应变GOF ID,我竟被诺拉杜丝数据帮助下,依靠新的HTML 5数据属性 – NimChimpsky 2013-03-26 12:56:56

回答

2

如果returnData是HTML节点,应该工作:

var bill_details = $(`#bill_details_1_narration`,returnData).val(); 

但既然你提醒我它是字符串,为什么会这样呢?你如何返回这些数据?

UPDATE:

var valArray = [], 
billDet = $('input[name$="[narration]"]', returnData); 

billDet.each(function() { 
    valArray.push($(this).val()) 
}); 
+0

嗨。 #bill_details_1_narration这将改变。第一次1然后2 ... – 2013-03-26 13:06:26

+0

var i = 1;我<3;我在这里我们不能将它限制为3.它可能是任何东西 – 2013-03-26 13:15:33

0

问题的标题是指td但是从我的理解,我相信你想从自1name属性检索1没有其他地方出现在您的标记:

如果你想要从值:

bill_details[1][narration] 

首先,我会建议使用data-attributeName

然后,您可以使用此代码从属性中提取1

var obj = $("#bill_details_1_narration"); 
var attr = obj.attr("name"); 
var sub = attr.substring(attr.indexOf('[') +1, attr.indexOf("]")); 

alert(sub); 

http://jsfiddle.net/t8uFC/

+0

(“#bill_details_1_narration”);这里的1会改变。第一次1,第二次2 ,,, – 2013-03-26 13:08:16

2

您可以从一个元素这样的转移值的另一:

$(function(){ 
    $('#id_Expeditor').html($('#id_Receiver').html()); 
}); 
+0

其不错。所以给+1 – 2013-03-27 10:09:56