首页 文章

在Angular 4中显示特殊符号

提问于
浏览
0

我在文本框中使用 ngModel 从我的后端获取值 . 这与可搜索的下拉列表相关联(我使用 <p> 标签填充,我使用 innerHtml ) .

如果我在文本框中显示注册商标符号,我该怎么办?有任何想法吗?还是角度指令?

这些值将作为HTML Byte字符从我同步的其他服务保存在DB中(例如,注册商标为 &#174;

<div class="Top-selection">
                    <input type="text" class="" placeholder="Type here to select a brand" (blur)="checkProperData()"
                           id="brand-id" #BRAND_ID="ngModel" [(ngModel)]="cmpgnCtgry['BRAND_ID']"
                           name="BRAND_ID" (click)="showBrands(row_no)" (keyup)=filter(row_no)/>

                    <div class="filterbox width300px" *ngIf="disableShow[row_no]">
                        <div *ngFor="let brand of brandList">
                            <p [innerHTML]="brand.brandName" (click)="selectCatalogId(brand.brandName, brand.brandUniqueId, brand.brandId, row_no)">
                                {{brand.brandName}}</p>
                        </div>
                    </div>
                </div>

我在谈论在这里读取BRAND_ID的方框

我也试过做以下事情,

var p = document.createElement('div');
                        p.textContent = this.campaign['CMPGN_DTL_TX'].CMPGN_CTGRY[i].BRAND_ID;
                        this.campaign['CMPGN_DTL_TX'].CMPGN_CTGRY[i].BRAND_ID = p.innerHTML;
                        console.log(p.innerHTML);

我真的没有't understand why this wasn'工作 . 我在我的 .ts 组件文件中实现了这个 . 记录这不会有帮助吗? (它也没有在HTML中更新) .

此外,我真的很惊讶没有标准的方法将其转换为注册商标 - 我们必须使用正则表达式并替换<或&符号 .

1 回答

  • 0

    正常 [(ngModel)] 应正确绑定任何Unicode符号

    template

    <div>
        <input [(ngModel)]="brand" />
    </div>
    

    component

    brand = "Google™©®"
    

    Screenshot

    enter image description here

    有关在保存到数据库/从数据库读取时如何编码和解码HTML实体的信息,请参阅以下问题:

    Plunker example

相关问题