在javascript

时间:2017-09-20 04:35:13

标签: javascript php jquery html angularjs

我正在使用php创建动态表,我的屏幕截图有两列有几列,在这两行中,每列都有相同的id(例如:for column monday,id =“mon”表示第一行和id =“mon”代表第二行),如果我为fisrt行输入星期一,在on blur期间我想获取第一行星期一列的输入值以及相同的行项目名称(Timesheet)。

有人可以帮助我吗?

enter image description here

1 个答案:

答案 0 :(得分:2)

首先是一条建议,不要在不同的元素中使用相同的id。 " id"属性设计为在DOM中是唯一的。使用" class"代替。

对于您正在解释的内容......

$('td input').blur(function() {
    var inputValue = $(this).val();
    var idThisColumn = $(this).parent('td').attr('id');
    var projectName = $(this).closest('tr').children('td').first().children('div.projecttitle').text();
});

你没有显示标题是如何在第一个td中形成的,所以我给你一个例子,以防万一...

<td>
    <div class="projecttitle">Timesheet</div>
    <div class="projectdesc">Dashboard Design</div>
</td>

...但请使用您需要的选择器。

<强>编辑:

好的,现在你已经向我发了第一栏的格式......

<td>
    <b><div class="projecttitle">{{$currentweek->project_name}}</div></b‌​>
</td>

你想要div里面的内容,所以......

var projectName = $(this).closest('tr').children('td').first().find('div.projecttitle').text();

我希望它有所帮助