任何人都可以告诉我下面的脚本可能有什么问题吗?
它应该在类名中查找带有#objec的最后一个DIV,然后查找DIV中的最后一个输入元素,然后添加一个新的DIV,其ID / Names已经增加了。我认为这是出错的路线:
var name = $("#objec:last>input").attr("name");
代码在这里:http://jsfiddle.net/mtait/9MbQH/6/
......及以下。
谢谢,
标记
<label id="add_tag">
Click me to add a new row
</label>
<div class="objec">
<div class="row">
<div class="span4">
<input class="span4" data-val="true" data-val-required="Objective is required" id="Objectives_7__objective" name="Objectives[7].objective" type="text" value="Timecard Completion" />
</div>
</div>
</div>
$(document).ready(function() {
var re = /\[(.*?)\]/;
$("#add_tag").click(function() {
var name = $("#objec:last>input").attr("name");
var m = re.exec(name);
var itemNumber = parseInt(m[1]) + 1;
var $newdiv1 = $('<div class="objec"><div class="row"><div class="span4"><input class="span4" data-val="true" data-val-required="Objective is required" id="Objectives_' + itemNumber + '__objective" name="Objectives[' + itemNumber + '].objective" type="text" value="..." /></div></div>');
$(".objec:last").after($newdiv1);
return false;
});
});
答案 0 :(得分:1)
此类用法适用于ID。如果object是ID,您可以使用下面的
$("#objec:last>input")
在你的情况下是一个类名
所以试试
$(".objec")
答案 1 :(得分:0)
可能你想要这个:
var name = $(".objec:last input").attr("name");
答案 2 :(得分:0)
如果我没弄错的话,我认为你应该使用“。”选择引用类与id的选择器。 ex / $(“。objec:last&gt; input”)。attr(“name”);