TextArea错误地呈现撇号(和语音标记)

时间:2011-01-29 23:21:04

标签: java wicket

我对Wicket很新。有人可以告诉我为什么语音标记和撇号被textarea作为一堆数字和#符号呈现?这是一些代码:

public class QuestionOptions extends BasePage{
private int ID;
private String text;
private TextArea optionText,questionText;
private DropDownChoice isOptionCorrect;
private InvalidInputIndicator optionsLabel,isCorrectLabel;
private FeedbackPanel feedback;
public QuestionOptions(final int ID, String questiontext){
    this.ID=ID;
    text=questiontext;
    Form form=new Form("optionsform");
    add(form);
    feedback=new FeedbackPanel("msgs");
    form.add(feedback);
    feedback.setOutputMarkupId(true);
    questionText=new TextArea("text",new Model(text));
    questionText.setEnabled(false);
    form.add(questionText);

这个想法是,在设计MCQ问题时,讲师可以为问题添加不同的选项。问题是:如果问题文本包含语音标记或撇号,则它们会以有趣的方式呈现。例如,“不要”这个词被渲染为不。如果有人能为我解决这个问题,我将非常感激。

2 个答案:

答案 0 :(得分:0)

您遇到的基本问题是使用特殊的html代码呈现引号,问号和其他特殊字符。似乎正在发生的事情是他们被转换为他们的特殊标签。这是一个应该能够帮助您生成帮助函数的站点,该函数将检测引号和其他特殊符号,然后您可以将其转换为正确的html代码。

例如,如果您在textarea文本中遇到“,可能需要将其转换为”

以下是应该提供帮助的网站http://www.learningmovabletype.com/a/000235display_code/

如果这不起作用,您可以尝试转义特殊字符。再次,你必须编写一个辅助函数来检测它们。在点击引号时,你会在它之前添加一个反斜杠:“ - > \”

答案 1 :(得分:0)

questionText.setEscapeModelStrings(false);