我的网址如下
document.writeln("<form name='statistics' action='submit.php?p='+precision+'&r='+recall+'&a='+accuracy; onsubmit='return validateForm()' method='get'>")
document.writeln("<button style = 'font-size: 32px; float : right'class = 'button' > See results </button>")
document.writeln("</form>")
网址字符串
'submit.php?p='+precision+'&r='+recall+'&a='+accuracy;
我也试过
'submit.php?p='+precision+'%26r='+recall+'%26a='+accuracy;
然而,在浏览器中也没有给我&符号。
我在浏览器中获取的两个案例的网址如下 -
http://localhost/WT2ASST1/submit.php?p=1r=0.4a=0.4
我没有在表单提交和网址上添加任何其他相关代码。
我需要做什么才能在我的网址中输入&符号?
答案 0 :(得分:0)
你正在使用错误的字符串连接。 这应该有效:
document.writeln("<form name='statistics' action='submit.php?p="+precision+"&r="+recall+"&a="+accuracy+"' onsubmit='return validateForm()' method='get'>");
document.writeln("<button style = 'font-size: 32px; float : right'class = 'button' > See results </button>");
document.writeln("</form>");
注意:如果要连接字符串,则必须使用正确的字符串分隔符,例如: “测试” + VAR + “测试” 不是“测试'+ var +'测试”
答案 1 :(得分:0)
这应该给你&符号(它为我做了)
document.writeln("<form name='statistics' action='submit.php?p='+precision+'&r='+recall+'&a='+accuracy; onsubmit='return validateForm()' method='get'>")
但是,整个事情都是双引号,所以+
将是一个文字字符串而不是一个运算符。在第二种情况下,您有一个编码的URL。 Document.write不会为你神奇地解码那些。你可以使用decodeURI
功能,但如果你只是使用文字&#34;&amp;&#34;那么它就是一样的。开头。
使用第一种方法,但使用双引号指示每个字符串的结束位置以及要连接变量的位置。像这样
document.writeln("'submit.php?p='"+precision+"'&r='"+recall+"'&a='"+accuracy);
快速说明一下,如果你没有将它们用于分离GET变量的预期目的,你只会对&符号进行编码;这就是你如何使用它们。对这些进行编码可能会让服务器感到困惑。