【问题标题】:Encoded value is displaying on textbox :- encodeURIComponent()编码值显示在文本框上:- encodeURIComponent()
【发布时间】:2023-03-27 02:27:01
【问题描述】:

我在按钮控件的OnClientClick 上调用javascript 函数来编码文本框值。
该JS函数调用encodeURIComponent()对文本框的文本值进行编码。

我的 Javascript 函数是

function Validate() {
    var d = document.getElementById('<%=NoteText.ClientID %>');
    var Hdn = document.getElementById('HdnProcessing');
    if (d.value == '') {
        alert(document.getElementById('<%=NotesMessage.ClientID %>').value);
        d.focus();
        return false;
    }
    if (Hdn.value == "Processing") {
        return false;
    } else {
        Hdn.value = "Processing";
        var headObj = document.getElementById('<%=NoteHeading.ClientID %>');
        headObj.value = encodeURIComponent(headObj.value);
        d.value = encodeURIComponent(d.value);
        return true;
    }
}

这里我的输入是文本框,即 NoteText 和 NoteHeading。

如果有人正在阅读这篇文章,我想知道是否可以将编码文本传递给服务器,而用户不会在文本框中看到编码文本的更新。当前,当用户单击“保存”按钮时,他们会在页面刷新前一瞬间看到文本更改为编码文本。我只是好奇我是否可以阻止用户看到它。

【问题讨论】:

  • 期望的行为是什么?哪个文本框应该有编码的文本?哪些输入是文本框(即 NoteText、NotesMessage、NoteHeading、以上所有内容等)?
  • 你使用encodeURIComponent但这里没有decodeURIComponent应该是这样吗?
  • Notetext 和 Noteheading 是输入,我们需要这个文本框的编码值来保存值。我们没有使用 decodeURIComponent。我们使用了这个 encodeURIComponent 因为有时我们会在文本框中添加尖括号值即.

标签: javascript asp.net encodeuricomponent


【解决方案1】:

我最近提供了一个非常相似的问题的答案,应该可以帮助您:

JavaScript encode field without spoiling the display

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-12
    • 2010-10-02
    • 1970-01-01
    • 2017-08-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多