0

这在 jQuery 中可能吗?

$(elem).('.class').html("new data");

我需要更改当前元素上的类的 HTML,因为有多个元素具有此类。我只想更改该特定元素上的类的 HTML。我尝试使用.parent()最近的孩子,但无济于事。

该函数由位于 tr 内的 td 内的选择标记调用,而我要更改的数据位于下一个 tr 中,因此如下所示:

<tr>
    <td>select</td>
    <td></td>
    <td></td>
</tr>
<tr>the td's which htmls i want to change</tr>

另请注意,<tr>可以多次添加保持选择,因此将有超过 1 个选择,因此该$(elem)部分。每当添加包含选择的新 tr 时,也将添加包含 td 的 tr,因此这是一个示例 html 代码:

生成的 HTML 代码:

  <tr class="action-row">
 <td valign="top">CRM Action:&nbsp;&nbsp;&nbsp;</td>
      <td valign="top"><select name="crm_action[]">
 <option value="add">Add to Group</option>
 <option value="transfer">Transfer to Group</option>
 </select>
 </td>
 <td valign="top">Action:&nbsp;&nbsp;&nbsp;</td>
 <td valign="top">
 <select name="funnel_type[]" class="funnel-type" onchange="type_switch(this)">
 options to determine what to display in this tr onchange
 </select>
 </td>
 <td>
 <img src="somewhere/action_delete.png" title="Delete" onclick="delete_row(this)"     style="cursor: pointer;"></td>
 </tr>
 //this part should have been inside the above tr as you can see it the php code above
 <tr class="actionrow odd">
 <td class="type-label" valign="top"></td>
 <td class="type-selection" valign="top"></td>
 <td class="type-button" valign="top" align="right" colspan="2"></td>
 </tr>
 //end              
 <tr class="action-row">
 <td valign="top">CRM Action:&nbsp;&nbsp;&nbsp;</td>
 <td valign="top">
 <select name="crm_action[]"><option value="add">Add to Group</option>
 <option value="transfer">Transfer to Group</option>
 </select>
 </td>
 <td valign="top">Action:&nbsp;&nbsp;&nbsp;</td>
 <td valign="top">
 <select name="funnel_type[]" class="funnel-type" onchange="type_switch(this)">
 another options
 </select>
 </td>
 <td>
 <img src="somewhere/action_delete.png" title="Delete" onclick="delete_row(this)"      style="cursor: pointer;">
 </td>
      </tr>
 <tr class="actionrow odd">
 <td class="type-label" valign="top"></td>
 <td class="type-selection" valign="top"></td>
 <td class="type-button" valign="top" align="right" colspan="2"></td>
 </tr>
4

3 回答 3

2

你在找find吗?

$(elem).find('.class').html("new data");

children挖一层,find直到它到达“叶子”。

于 2013-04-24T21:37:30.850 回答
0

取决于 elem 是否为变量。

 $('elem.class').html("new data");

或者

 $(elem).find('.class').html("new data");
于 2013-04-24T21:38:42.357 回答
0

您可以通过选择元素来做到这一点

$("div") // Can be whatever you want

然后像在 CSS 中一样在它之后添加类

$("div.class")

最后,调用元素上的html()或方法text()

$("div.class").html("new data")

小提琴

于 2013-04-24T21:39:09.243 回答