Javascript 以HTML格式读取逗号分隔的值
我有一个简单的HTML输入元素:Javascript 以HTML格式读取逗号分隔的值,javascript,html,Javascript,Html,我有一个简单的HTML输入元素: <input type="text" class="form-control" name="value"> 此字段可以有逗号分隔的值,例如ABC、DEF、GHI。提交时的字段值必须与输入时完全相同。但是,当我将字段值打印到控制台时,我得到 ABC%2C+DEF%2C+GHI 我想要ABC、DEF、GHI 我为表单尝试了decodeURIComponent和accept charset=“ISO-8859-1”之类的方法,但都不起作用。如何防止逗
<input type="text" class="form-control" name="value">
此字段可以有逗号分隔的值,例如ABC、DEF、GHI
。提交时的字段值必须与输入时完全相同。但是,当我将字段值打印到控制台时,我得到
ABC%2C+DEF%2C+GHI
我想要ABC、DEF、GHI
我为表单尝试了
decodeURIComponent
和accept charset=“ISO-8859-1”
之类的方法,但都不起作用。如何防止逗号和空格的编码?提前谢谢 好的,我知道了。在JavaScript中,必须这样处理输入字段:
decodeURIComponent(str.replace(/\+/g,' '))
其中str=
ABC%2C+DEF%2C+GHI
。只有decodeURIComponent
是不够的。希望有帮助 根据我的测试,在提交之前,对值进行编码,它应该可以工作
<form id="myForm" action="form.php" method="GET">
<input id="encodeMe" name="string" value="this will be encoded correctly" />
<input type="submit" value="OK" />
</form>
$('#myForm').submit(function() {
var enc = escape($("#encodeMe").val());
$("#encodeMe").val(enc);
});
$('#myForm')。提交(函数(){
var enc=escape($(“#encodeMe”).val();
$(“#encodeMe”).val(enc);
});
如果您发送数据,它将被编码。。接收数据时,需要使用decodedURIComponent,然后将其拆分。decodedURIComponent正确解码逗号,但保留空格的+符号不变。