用ASCII字符替换提交按钮值

我正在尝试用ASCII字符代码替换提交按钮的“保存”值,例如 ( – ),除了它显示文字代码而不是它的翻译。

 $("#myform").on("submit", function(){ $("input#commit").attr('readonly', true).val("—"); }); 

产生一个这样的按钮:

 [ — ] 

我也试过.prop('value', '—'); 但同样的问题。 这有可能吗?

只需使用值中的字符,如下所示:

 $("#myform").on("submit", function(){ $("input#commit").attr('readonly', true).val("—"); }); 

或者,使用unicode值,如下所示:

 $("#myform").on("submit", function(){ $("input#commit").attr('readonly', true).val('\u2014'); }); 
 $("button[type='submit']").on("click", function(e){ $("button[type='submit']").attr('readonly', true).html("—"); }); 
  

实际上,您需要做的是使用ASCII实体创建一个元素并读取该元素的innerText

 $("#myform").on("submit", function(){ var d = document.createElement("div"); d.innerHTML = "—"; var ascii = d.innerText; $("input#commit").attr('readonly', true).val(ascii); }); 

有关更多信息,请参阅以下答案: 我如何在JS中浏览HTML实体? (改变&lt;到<)

尝试使用String.fromCharCode和即使这工作…不设置值时???

 alert(String.fromCharCode('151')); 

http://jsfiddle.net/k6pphr88/

当我尝试通过jquery或仅使用普通的javascript分配值。 使用String.fromCharCode(’151’)不会出现该字符

 //doesnt work $("input#commit").val(String.fromCharCode('151')); //doesnt work $("input#commit")[0].value = String.fromCharCode('151'); //doesnt work document.getElementById('commit').value = String.fromCharCode('151'); 

我找到解决方法的最佳方法是创建一个临时div。 设置html()并使用jQuery返回text();

 //works $("input#commit").attr('readonly', true).val($('
').html('—').text());

http://jsfiddle.net/vtmryLbp/