【发布时间】:2009-04-09 04:59:11
【问题描述】:
我正在用这个 php 生成以下 html 表单:
echo "<form name=\"userForm\">
Username:
<input type=\"text\" name=\"username\" />
<br />
First name:
<input type=\"text\" name=\"firstname\" />
<br />
Last name:
<input type=\"text\" name=\"lastname\" />
<br />
<input name=\"Submit\" type=\"submit\" value=\"Update\" onclick=\"submitUserInfo();return false\"/>
</form>";
由submitUserInfo处理,这里是:
function submitUserInfo() {
url = "edit_user.php?cmd=submitinfo&username="+document.userForm.username.value+"&firstname="+document.userForm.firstname.value+"&lastname="+document.userForm.lastname.value;
var xmlHttp=GetXmlHttpObject();
if(xmlHttp.responseText == 'true') {
alert(url);
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
//updateByUser(username);
}
}
我明确将 url 定义为以
开头edit_user.php?cmd=submitinfo&username
但是,当按下提交按钮时,它会尝试将 url 发送为
edit_user.php?username=
我不知道为什么。我已经成功地将上述技术与我网站上的其他表单一起使用,但找不到任何排除 cmd=submitinfo& 的原因。
【问题讨论】:
-
什么是 GetXmlHttpObject 实现?对 responseText == 'true' 的检查是什么?如果您尝试将 url 设为本地 (var url = "...";) 会发生什么?如果在构建之后显示 url 会发生什么?如果在调用 GetXmlHttpObject 之后显示它会发生什么?
标签: php javascript html ajax