我对我的文本框(text,text2)中的这两个值有一个问题,看起来text2只显示它的值,有什么方法我可以摆脱这些东西。任何帮助都会非常感激。
parameters = ('text=' + document.getElementById('text').value) && ('text2=' + document.getElementById('text2').value;
xmlhttp.open('POST', 'try.php', true);
xmlhttp.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
xmlhttp.send(parameters);
答案 0 :(得分:0)
parameters = ('text=' + document.getElementById('text').value) && ('text2=' + document.getElementById('text2').value;
这条线错了。 &&
并不意味着“连接”:它意味着"logical and"。基本上,它意味着“如果操作员的任何一方是假的,则返回false
,否则,返回右侧”。因此,这将始终返回'text2=' + document.getElementById('text2').value
,因为这是&&
运算符的右侧。
你需要连接它们,否则操作符正确地使用+
。
parameters = 'text=' + document.getElementById('text').value + '&' + 'text2=' + document.getElementById('text2').value;
请注意,您可能还应该使用encodeURIComponent
来确保您发出有效的HTTP请求:
parameters = 'text=' + encodeURIComponent(document.getElementById('text').value) + '&' + 'text2=' + encodeURIComponent(document.getElementById('text2').value);
答案 1 :(得分:0)
不要使用&&
来连接字符串,请使用+
。还有不平衡的括号,你错过了“&”在URL字符串中分隔您的参数。
parameters = 'text=' + document.getElementById('text').value + '&text2=' + document.getElementById('text2').value;