0

我有以下带有与之关联的标签的 Radio 按钮。

<div id="dependents">
    <input ng-non-bindable  type="radio" id='Partner' name="relationship" class="dependent-relation" value='P' />
    <label for="Partner">Prtner</label>

    <input ng-non-bindable  type="radio" id='Child' name="relationship" class="dependent-relation" value='C' />

    <label for="Child">Child</label>
</div>

上面的 div 将被动态添加到页面中。我们可以有多个受抚养人。

所以每次添加这个 div 时,我都会更改Id, name单选按钮和for标签。下面是我要替换的脚本。

var html = htmlContent; // html content will be above code
html = html.replace('Partner', 'Partner' + count); // Replacing Id : Working fine
html = html.replace('for="Partner"', 'for="Partner' + count + '"'); // Replacing for : Not working
html = html.replace('Child', 'Child' + count); // Replacing Id : Working fine
html = html.replace('for="Child"', 'for="Child' + count + '"'); // Replacing for : Not working

这在 IE9、IE 10、chrome 中运行完美,但在 IE7 和 IE8 中无法运行。

谁可以帮我这个事?

我发现了问题...

我想每当我尝试像这样替换

html = html.replace('name="relationship"', 'name="relationship"' + count + '"'); 

它不起作用(仅在 IE 8 和 7 中)。有什么建议???

4

1 回答 1

0

它不起作用的原因是因为在您替换同一个词之前。

尝试:

var html = "<div id="Dependents"> ... </div>";
html = html.replace('for="Partner"', 'for="Partner2' + count + '"');
html = html.replace('Partner', 'Partner' + count); 
html = html.replace('Partner2', 'Partner');
html = html.replace('for="Child"', 'for="Child2' + count + '"');
html = html.replace('Child', 'Child' + count);
html = html.replace('Child2', 'Child');
于 2013-11-13T15:36:07.417 回答