在 Zend Framework 中,Action 是 Controller 类中的方法,可以通过 URL 访问。例如,如果您的 Controller 类名为“MathController”并且它包含一个名为“sixBySixAction”的操作,那么您可以通过导航到类似于以下内容的 URL 来触发此操作:
http://baseUrl/math/six-by-six
请注意,操作方法的名称在控制器类中是驼峰式的,但在 URL 中用破折号分隔。这是 Zend Framework 的格式要求。另请注意,控制器类名为“MathController”,但您只需将“math”放在 URL 中。
因此,您可以使用 JavaScript 为您的选择框分配一个 onChange 处理程序,该处理程序只是重定向到一个特定的 URL,该 URL 通过访问特定控制器类中的特定操作方法来处理更改。
有关这方面的更多信息,请查看Zend Framework Programmer's Reference Guide 中的此页面。
至于 JavaScript 部分,这里是一个如何在更改选择框时重定向的示例。当然,你需要修改它,但它会让你开始:
<Script language="JavaScript">
function goto(form) { var index=form.select.selectedIndex
if (form.select.options[index].value != "0") {
location=form.select.options[index].value;}
}
</SCRIPT>
<FORM NAME="form1">
<SELECT NAME="select" ONCHANGE="goto(this.form)">
<OPTION VALUE="">-------Choose a Selection-------</OPTION>
<OPTION VALUE="index.htm">Home</OPTION>
<OPTION VALUE="web_development.htm">Web Development</OPTION>
<OPTION VALUE="html_codes.htm">HTML Tips</OPTION>
<OPTION VALUE="html_codes_chart.htm">HTML Code Chart</OPTION>
<OPTION VALUE="javascript_codes.htm">JavaScript Codes</OPTION>
<OPTION VALUE="216_color_chart.htm">Color Code Chart</OPTION>
</SELECT>
</FORM>