2016-07-25 41 views
-5

我有一个提示与percent-sign从Javascript文本添加到asp:textbox并试图逃脱%字符串jQuery的标签输入标签添加到ASP:文本框从百分号值未捕获的错误提示:语法错误,无法识别的表达式:%

<asp:TextBox ID="txtValue" Enabled="true" CssClass="form-control" TextMode="MultiLine" Rows="5" runat="server"></asp:TextBox> 


    sql = prompt("Enter Condition"); 
       if (sql != null) { 
        var sqlcode = cond.concat(" like ", " \'\%]", sql, "\%\' "); 
        $('#<%= txtValue.ClientID %>').addTag(sqlcode); 
       } 

但这仍显示我

Uncaught Error: Syntax error, unrecognized expression: %test%

jquery-tags-input初始化

<script> 
     function onAddTag(tag) { 
      alert("Added a tag: " + tag); 
     } 

     function onRemoveTag(tag) { 
      alert("Removed a tag: " + tag); 
     } 

     function onChangeTag(input, tag) { 
      alert("Changed a tag: " + tag); 
     } 

     $(document).ready(function() { 
      $('#<%= txtSQL.ClientID %>').tagsInput({ 
       width: 'auto', 
       'delimiter': [' '], 
       defaultText: "", 
unique:false, 

       onAddTag: function (elem, elem_tags) { 
        var languages = ['or', 'and']; 
        $('.tag', elem_tags).each(function() { 
         if ($(this).text().search(new RegExp('\\b(' + languages.join('|') + ')\\b')) >= 0) 
          $(this).css('background-color', 'blue'); 
        }); 
       }, 
       onChange: function (elem, elem_tags) { 
        var languages = ['or', 'and']; 
        $('.tag', elem_tags).each(function() { 
         if ($(this).text().search(new RegExp('\\b(' + languages.join('|') + ')\\b')) >= 0) 
          $(this).css('background-color', 'blue'); 
        }); 
       } 


      }); 

    }); 
</script> 

发生这种情况与'Singlequote

我怎么能逃过他们的字符串,我尝试使用双反斜线\\但它只是使用上,我不能使用值输入ID元字符。

+2

这是不以任何机会,有效的ID解决了我的解决方案。这可能会导致一个有效的ID如果由某些服务器端thingie预处理,但反斜杠不会达到(相反)。如果你服务的是.js文件,服务器可能不知道它应该先以某种方式进行转换。 –

+0

所以我尝试添加文本到文本输入,但也有同样的错误:) @JanDvorak –

回答

0

我通过删除这些PROC

onAddTag: function (elem, elem_tags) { 
    var languages = ['or', 'and']; 
    $('.tag', elem_tags).each(function() { 
     if ($(this).text().search(new RegExp('\\b(' + languages.join('|') + ')\\b')) >= 0) 
      $(this).css('background-color', 'blue'); 
    }); 
}, 
onChange: function (elem, elem_tags) { 
    var languages = ['or', 'and']; 
    $('.tag', elem_tags).each(function() { 
     if ($(this).text().search(new RegExp('\\b(' + languages.join('|') + ')\\b')) >= 0) 
      $(this).css('background-color', 'blue'); 
    }); 
} 

然后它的工作就像一个魅力:)

相关问题