0

假设我正在查看我的 Cake 应用程序。例如http://myapp.com/controller/action/argument

我知道生成与 HtmlHelper 的链接,如下所示:

echo $this->HtmlHelper->link( 'Link title', array('controller' => 'mycontroller', 'action' => 'myaction', $parameter) );

现在,假设我有一个下拉选择框,里面有很多选项。让链接使用选择框中的值作为操作参数的最佳方法是什么?我需要使用 jQuery 在下拉更改时更改链接吗?

4

2 回答 2

0

您应该尽可能地编写更通用的 CakePHP 链接,因此使用这样的 jQuery 函数:

function displayVals() {
    var src = $( "#sel" ).val();
    $('#link').attr('href',src);
}

和这样的 HTML 部分:

<form action="../">
<select id="sel" name="myDestination">
    <option value="http://www.yahoo.com/">YAHOO</option>
    <option value="http://www.google.com/">GOOGLE</option>
</select>
</form>
<a href="" id="link">click</a>

您的结果将类似于 this fiddle

于 2013-09-23T14:51:15.637 回答
0

是的,您可以使用jquery

只需使用 html 脚本块来获取 html 中的脚本。

echo $this->Html->scriptBlock("
    $('#yourSelectBoxId').change(function() {
        var url = '". $this->Html->url(array(
            'controller' => 'mycontroller', 
            'action' => 'myaction', $parameter
        )) ."'; // just setting your url like this.
        // you can proceed further with url 
    })
")
于 2013-09-23T15:10:30.243 回答