2013-10-18 73 views
1

我有一个输入框,其中填充了来自apex方法的字符串。如果我在字符串中使用撇号,我收到一个'Unexpected Identifier'错误。退出字符串的撇号强制

继承人的代码:

  $('#textInput').append(
       $('<input>').addClass('ui-input-note').attr('placeholder', 'Notes') 
        .val('{! CurrentNote }') 
      ); 

这是在控制台显示:

  $('#textInput').append(
       $('<input>').addClass('ui-input-note').attr('placeholder', 'Notes') 
        .val('Jim's dog') 
      ); 

我假设撇号正在退出的字符串。我如何解决这个问题?

除了使用“”。

干杯

+0

您应该能够通过使用\ – eithed

+0

逃避这些字符,但我不希望用户必须键入吉姆\的狗 – Daft

+0

@Daft什么是你想与解决实际问题代码?如果您在包含单引号的用户输入时遇到问题,那么您听起来像是在做错某些事情。 –

回答

1

你可以做到这一点如下:

  1. 捕捉事件

    $(document).keypress(function(event){ 
         alert(String.fromCharCode(event.which)); 
        }) 
    
  2. 附加在其关键的escape字符\用escape个字符到用户输入。

    //Append text to input element 
        function jQ_append(id_of_input, text){ 
         if(text=='`'){ 
          text='\`'; 
         } 
         $(id_of_input).val($(id_of_input).val() + text); 
        } 
    
+0

非常方便的Hemant!并感谢您使用代码进行更新。 – Daft