我正在替换表格内的范围>带选项框的td。 我想在创建选项框时为动态值分配一些唯一ID。怎么做到这一点?
已生成唯一ID,我想在创建时在Html中设置此唯一ID。
<td id="tdTest">
<span id="spanId" class="connectedSlot" style="color:rgb(27,99,173)">Enabled</span>
</td>
$("#"+spanId).replaceWith(function () {
return "<select class='form-control' id=<<DYNAMIC ID>> style='width:200px;'><option value='0'>Enabled</option><option value='1'>Disabled</option></select>";
});
例如,我将从变量中获取一些值并分配给变量,然后将此变量赋值给id。
var myId = "OptionId"+test;
select class='form-control' id=myId style='width:200px;'>
由于
答案 0 :(得分:1)
在字符串中使用如下变量:
var unqiueID = "myID123", ret = "";
ret = "<select class='form-control' id='" + unqiueID +"' style='width:200px;'>";
答案 1 :(得分:0)
确保分配唯一值的一种可能方法是跟踪所有可用的ID并分配我们列表中不存在的ID。
getUniqueId()
是一个始终返回唯一ID的函数。
function getUniqueId() {
//get all the ids in this document
var ids = new Array();
$('[id]').each(function() { //Get elements that have an id=
ids.push($(this).attr("id")); //add id to array
});
//give some random value to uniqueId
//if this value is in ids array, then assign a different id and recheck the condition
var uniqueId;
while(true) {
uniqueId = 'some-prefix-' + Math.floor(Math.random() * 10000);
if($.inArray(uniqueId , ids) == -1) {
break;
}
}
return uniqueId;
}
答案 2 :(得分:0)
可能的解决方案:
function randomString(length) {
return Math.round((Math.pow(36, length + 1) - Math.random() * Math.pow(36, length))).toString(36).slice(1);
}
答案 3 :(得分:0)
自发布以来已经有好几年了,公认的解决方案对我不起作用。这是这样做的语法:
[id]="unqiueID"