【发布时间】:2020-10-11 22:23:24
【问题描述】:
我需要通过javascript动态分配每个剃须刀型号的索引。
这里是javascript
function ResetIndexModel() {
var idx = 0;
$('.page-name').each(function () {
var text = $(this).text();
text = text.replace('Model.DraftPages[#].Name', 'Model.DraftPages[' + idx + '].Name');
$(this).text(text);
idx++;
});
}
这是我的 HTML
<li class="active tabPage"><label for="Name" class="page-name">Model.DraftPages[#].Name</label><span title="Edit Page Name" class="glyphicon glyphicon-pencil" style="font-size:10px;"></span>></li>
我也试过这个。
text = text.replace('Model.DraftPages[#].Name', '@('@')Model.DraftPages[' + idx + '].Name');
所以我需要使用 js 函数的迭代替换“#”符号。 使用我当前的代码,它只会在标签中显示“Model.DraftPages[0].Name”。
我的期望是,它应该显示@Model.DraftPages[0].Name 的值
有什么方法可以实现吗?
【问题讨论】:
-
您能解释一下主要问题吗?您的预期结果是什么?
-
@Ashu 我想在元素中动态重新设置 Razor 模型的索引。所以我的预期结果是 DraftPages 索引 0 处的 'name' 属性的值。我目前拥有的是文本 'Model.Draftpages[0].Name' 本身。
-
0 值的名称是什么?
-
text = text.replace('Model.DraftPages[#].Name', Model.DraftPages[idx].Name);能否请您删除单引号字符并检查它是否有效,只是猜测,不确定它是否相关
-
如果你想在结果中添加
@,你可以试试这个:text = text.replace('Model.DraftPages[#].Name', '@Model.DraftPages[' + idx + '].Name');
标签: javascript c# jquery razor