不需要CGI.script_name

时间:2013-06-27 19:31:15

标签: coldfusion coldfusion-8

请参阅以下代码:

<cfform method="POST" action="#CGI.script_name#">
    <p>Enter your Name:&nbsp;
    <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. "

1 个答案:

答案 0 :(得分:3)

HTML表单的默认操作是在未指定action时提交给自己。请参阅有关该主题的相关讨论:Is it a good practice to use an empty URL for a HTML form's action attribute? (action="")

我总是包含一个action,如果没有其他原因,可以避免混淆。