- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
考虑一个场景
我有一个表,有 8 列,每列都有一定数量的隐藏字段 - 假设有 5 个隐藏字段。
我想要实现的是当我单击特定单元格时获取所有隐藏字段的值,并且我还希望从[单元格]当前单击的行的第一个 td 中获取隐藏值
我能够获取当前单击的行单元格的第一个子单元格的隐藏字段值,如下所示
element.closest("tr").find("td:first").find("input:hidden")
这将导致 3,因为第一个单元格始终有 3 个输入。
我正在获取第一个单元格的隐藏输入值,但无法获取当前单击单元格的隐藏输入值。
这是示例 HTML
<table>
<tr>
<td style="width: 50px;">4th Class( A )
<input id="SectionID" name="SectionID" type="hidden" value="7">
<input id="SectionDetailID" name="SectionDetailID" type="hidden" value="1">
<input id="SectionName" name="SectionName" type="hidden" value="4th Class( A ) ">
</td>
<td class="cells" onclick="fetchData(this);">
<div>
<div class="dataRow">
<div class="cellLabel">Name:</div>
<div class="cellValue">P D S</div>
</div>
<div class="dataRow">
<div class="cellLabel">Sub:</div>
<div class="cellValue">Hindi</div>
</div>
<div class="dataRow">
<div class="cellLabel">Period:</div>
<div class="cellValue">Period 2</div>
</div>
<div class="dataRow">
<div class="cellLabel">From:</div>
<div class="cellValue">11:00</div>
</div>
<div class="dataRow">
<div class="cellLabel">To:</div>
<div class="cellValue">12:00</div>
</div>
<div class="dataRow">
<div class="cellLabel">Year:</div>
<div class="cellValue">2014</div>
</div>
</div>
<input id="TimeTableDtlID" name="TimeTableDtlID" type="hidden" value="1">
<input id="TimeTableHdrID" name="TimeTableHdrID" type="hidden" value="7">
<input id="PeriodID" name="PeriodID" type="hidden" value="38">
<input id="PeriodName" name="PeriodName" type="hidden" value="Period 2">
<input id="PeriodFromTime" name="PeriodFromTime" type="hidden" value="11:00">
<input id="PeriodToTime" name="PeriodToTime" type="hidden" value="12:00">
<input id="TTYear" name="TTYear" type="hidden" value="2014">
<input id="SubjectName" name="SubjectName" type="hidden" value="Hindi">
</td>
<td class="cells" onclick="fetchData(this);">
<div>
<div class="dataRow">
<div class="cellLabel">Name:</div>
<div class="cellValue">J P Pl</div>
</div>
<div class="dataRow">
<div class="cellLabel">Sub:</div>
<div class="cellValue">English</div>
</div>
<div class="dataRow">
<div class="cellLabel">Period:</div>
<div class="cellValue">Period 2</div>
</div>
<div class="dataRow">
<div class="cellLabel">From:</div>
<div class="cellValue">11:00</div>
</div>
<div class="dataRow">
<div class="cellLabel">To:</div>
<div class="cellValue">12:00</div>
</div>
<div class="dataRow">
<div class="cellLabel">Year:</div>
<div class="cellValue">2014</div>
</div>
</div>
<input id="TimeTableDtlID" name="TimeTableDtlID" type="hidden" value="3">
<input id="TimeTableHdrID" name="TimeTableHdrID" type="hidden" value="7">
<input id="PeriodID" name="PeriodID" type="hidden" value="38">
<input id="PeriodName" name="PeriodName" type="hidden" value="Period 2">
<input id="PeriodFromTime" name="PeriodFromTime" type="hidden" value="11:00">
<input id="PeriodToTime" name="PeriodToTime" type="hidden" value="12:00">
<input id="TTYear" name="TTYear" type="hidden" value="2014">
<input id="SubjectName" name="SubjectName" type="hidden" value="English">
</td>
</tr>
</tbody>
</table>
jQuery
function fetchData(element) {
var $element = $(element);
var objHidden = [];
console.log($element.closest("tr").find('td:first').andSelf().find("input:hidden").length); // Returns 19 Where it must be 11
$element.closest("tr").find('td:first').andSelf().find("input:hidden").each(function (i, elem) {
objHidden[elem.getAttribute("name")] = elem.value;
});
console.log(objHidden); // Getting same values always
}
编辑
这是一个简单的场景,当我单击单元格意味着 TD
时,除了第一个单元格,我想要当前单击的单元格中的隐藏值以及第一个 TD
中的隐藏值code> 在当前行未被点击的地方。
如何获取当前点击单元格的隐藏字段和最近行第一个td的隐藏字段?
非常感谢任何形式的帮助。
最佳答案
andSelf
和最后一个 jQuery 对象进入当前堆栈。但如果我们仔细看看你的台词:
$element.closest("tr").find('td:first').andSelf().find("input:hidden")
您执行.closest().find().andSelf()
。这意味着 andSelf
返回 .closest('tr')
。
尝试使用add
代替:
$element.closest("tr").find('td:first').add($element).find("input:hidden")
或者,您也可以使用它:
$element.siblings(":first").andSelf().find("input:hidden");
关于javascript - 从当前点击的td和当前行的第一个td获取隐藏字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23017015/
我正在用一个 TD 和一个 colspan 属性替换多个 TD。 然而,这呈现完全不同。 我不明白为什么 不同于 我的问题是前 2 个 TD 的宽度之和与 colspanned TD 的宽度不同。
我想这是个愚蠢的问题,但我是 json 的新手,所以任何答案都会有所帮助。 我有 json 文件: `{"aaData": [ [1, "70.1700", "2008-12-29 11:23:00"
我有一个类似 html 的网页格式如下: .... . . . alo foo bla bla 现在,我只知道值 bla bla , 根据该值我们可以跟踪或找到 3rd
我有以下 html 代码: Add New Item test test test test test test test te
Name1 Position1 Operation1 Name2 Position2
如果其中的数据与同一行上第三列 td 内的数据匹配,我需要做的是向第一列 td 添加一个类。 http://jsfiddle.net/rUssu/ html 表格 firstsecondthi
有什么方法可以清除或隐藏第一个 td 的内容,从双列表中的第二个 td,而无需对实际 td 的任何编辑权限? 所以我想隐藏下表中的数字 1. Content
当第一个高度大于第二个 , 包含第二个文本 与中心对齐。我想要第二个 的文本或元素当第一个 对齐到左上角的高度大于秒。 我如何使用 css 来做到这一点? ? HTML5, CSS3 an
我这里遇到了一些麻烦。我正在开发一个按钮,一旦选择该按钮将运行 JavaScript 函数 - ShowColumn() - 这将使表格列出现。表格列首先将被隐藏 - “display:none;”
我需要将第一个 td 设为 100% 宽(包括图像)并将其他 td 放在第一个 td 下方。如何在不更改 HTML 的情况下执行此操作? 这是我的: #katalogas { float:left;
用于创建规则列表的Java类 public class CompArray { public ArrayList a1= new ArrayList(); public CompArray (){
我想在悬停在特定 td 上时更改特定 td 之前所有 td 的背景颜色。 因此,当我将鼠标悬停在该图标上时,该特定行中它之前的所有图标和文本都会更改它们的背景。 任何人都可以建议如何实现它。 这是我的
我今天花了一些时间查看使用 JQuery 遍历表及其行的示例,经过大量试验后我能够做到这一点。但是我在尝试从 td 元素获取值时遇到问题,因此我可以更改为另一个 td 元素的颜色。我有一个绑定(bin
这个问题在这里已经有了答案: Is there a "previous sibling" selector? (32 个答案) 关闭 7 年前。 我正在构建一个与此类似的表: td
当我想设置 td 的宽度时,我将 td 设置为如下宽度: ... 我已经看到通过添加一个空的 div 来设置 td 宽度: some text .h-间隔符{ 高度:0; 宽度:0; 溢
我有以下 HTML 表格: Products Pack Of Quantity Volume Unit Reb
我需要提升文本,但如果我将类应用于 IE、Opera 和 Chrome 中的 TD 或 TR,则所有单元格都会提升(背景和边框以及单元格中的文本)。请看例子: Untitled D
我试图在所有 之间放置边距除了 的 margin-top在第一行, 的底部边距在最后一行。那可能吗?谢谢。 table { border: 1px solid black; width: 98%;
我需要发布我的 td 标签的这些值,因为这是一个使用 jquery 的可编辑表。我不确定这里的问题是脚本还是 td 标签?目前我的 var_dump($_POST) 没有返回任何值。 参见下面的代码,
我想检查当前网格单元格是否是行中最后一个可见单元格。 //accurately confirms if cell is the last cell in the row, assuming there
我是一名优秀的程序员,十分优秀!