我正在尝试用新的ID替换旧ID,但此功能无效。如何解决此错误?
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a class="btn btn-success addfield" id="addfield" class="addfield" data-id="1">Add field</a>
&#13;
flask.send_file(filename_or_fp, mimetype=None, as_attachment=False,
attachment_filename=None, add_etags=True,
cache_timeout=None, conditional=False,
last_modified=None)
&#13;
答案 0 :(得分:3)
var newvalue = currentvalue++;
执行此操作时,newvalue
的值为1,然后只有currentvalue
更改为2.
因为它是后增量。
将其更改为预增量
$(".addfield").click(function(){
var currentvalue = $(this).attr('id');
var newvalue = ++currentvalue;
$('.addfield').attr('id', newvalue);
alert(currentvalue);
console.log($(".addfield"));
})
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a class="btn btn-success addfield" id="1" class="addfield">Add field</a>
&#13;
答案 1 :(得分:2)
由于OP更新并添加了一个新问题,我正在添加新答案。
注意:属性值为String。因此,您需要使用parseInt
将其转换为int,如下所示。检查代码。
要更改数据ID,
$("#addfield").click(function(){
alert(parseInt($(this).attr('data-id'))+1);
$(this).attr('data-id', + parseInt($('#addfield').attr('data-id'))+1);
console.log($(this));
})
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a class="btn btn-success addfield" id="addfield" class="addfield" data-id="1">Add field</a>
&#13;
答案 2 :(得分:0)
问题是您在设置newValue
后增加了价值。
在这一行:var newvalue = currentvalue++
;它发生了两件事:
1) var newvalue = currentvalue;
2) currentvalue = currentvalue + 1
$(".addfield").click(function() {
$(this).attr('data-id', +$(this).attr('data-id')+1);
})
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a class="btn btn-success addfield" data-id="1" class="addfield">Add field</a>
&#13;
答案 3 :(得分:0)
请检查以下代码,使用数字ID。
$(".addfield").click(function(){
var currentvalue = $(this).attr('id');alert("Old Id="+currentvalue);
var newvalue = currentvalue++;
$('.addfield').attr('id', newvalue);
alert("New Id="+currentvalue++);
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="addfield" id="1">Click Here</div>
&#13;