我希望能够将任何字符串传递给 JQuery UI 中的按钮文本。
假设我有这个字符串:
Ajouter L'amie a la liste “amies”
实际传递此文本而不导致大量 JavaScript 错误的唯一方法是对其进行 HTML 编码。
registerhtml.dialog({
modal: true,
title: 'My Dialog Title',
resizable: false,
buttons: [
{
text: 'Ajouter L'amie a la liste "amies"',
click: function(){
// Do something important
$(this).dialog('close');
}
},
{
text: 'Cancel',
click: function() {
$(this).dialog('close');
}
}
]
});
但我在按钮中没有收到任何人类可读的文本。只有相同的编码文本。
有没有快速解决这个问题的方法?也许我在按钮对象中缺少一个选项。
或者我应该戴上手套,调用护士并在 JQuery-ui.js 文件中开始手术?
最佳答案
为了能够使用 htmlentities,在将字符串插入按钮时必须使用 html
方法,因为 text
会直接插入文本而不执行任何操作实体编码:
registerhtml.dialog({
modal: true,
title: 'My Dialog Title',
resizable: false,
buttons: [
{
html: 'Ajouter L'amie a la liste "amies"',
click: function(){
// Do something important
$(this).dialog('close');
}
},
{
html: 'Cancel',
click: function() {
$(this).dialog('close');
}
}
]
});
关于JQuery UI 编码噩梦,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13718836/