请参阅以下代码:
<cfform method="POST" action="#CGI.script_name#">
<p>Enter your Name:
<input name="name" type="text" hspace="30" maxlength="30">
<input type="Submit" name="submit" value="OK">
</cfform>
<cfscript>
function HelloFriend(Name) {
if (Name is "") WriteOutput("You forgot your name!");
else WriteOutput("Hello " & name &"!");
return "";
}
if (IsDefined("Form.submit")) HelloFriend(Form.name);
</cfscript>
来源:http://livedocs.adobe.com/coldfusion/8/htmldocs/help.html?content=UDFs_01.html#1167055
即使没有动作字段的CGI.script_name
属性,代码也能正常运行。我可以知道为什么要这么做吗?说明"Uses the script_name CGI variable to post to this page without specifying a URL. "
答案 0 :(得分:3)
HTML表单的默认操作是在未指定action
时提交给自己。请参阅有关该主题的相关讨论:Is it a good practice to use an empty URL for a HTML form's action attribute? (action="")
我总是包含一个action
,如果没有其他原因,可以避免混淆。