无法解析getElementById

时间:2016-07-05 06:05:44

标签: javascript jquery getelementbyid

我在我的应用程序中使用jquery,我在rails上使用ruby。现在我想在输入时立即在搜索框中输入数据。一切正常但问题是它无法捕获像#@$&()%等特殊字符。它适用于所有其他数字和字母表。我正在使用getElementById技术从文本框中获取数据。

请告诉我摆脱这个问题的任何解决方案

我的jquery代码部分是:

<script src="//code.jquery.com/jquery-1.10.2.js"></script>
<script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script>


<link rel="stylesheet" href="/resources/demos/style.css">
<script>


$(document).ready(function(){
$("input").keyup(function(){
    var box = document.getElementById("tags");
    document.getElementById("abc").innerHTML = box.value;
    $.getScript('/employees/new?pt=' + box.value)
});
});
</script>

实际上我想将这个捕获的数据从文本框发送到我的rails控制器。我的控制器名称是员工,行动是新的

1 个答案:

答案 0 :(得分:5)

您需要使用encodeURIComponent()

对参数值中的特殊字符进行编码
  

encodeURIComponent()方法通过将某些字符的每个实例替换为表示字符的UTF-8编码的一个,两个,三个或四个转义序列来编码统一资源标识符(URI)组件(仅将是由两个&#34;代理&#34;字符组成的字符的四个转义序列。

$.getScript('/employees/new?pt=' + encodeURIComponent(box.value));