首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MagicSuggest:选择项目后重定向

MagicSuggest:选择项目后重定向
EN

Stack Overflow用户
提问于 2013-10-18 04:21:42
回答 1查看 572关注 0票数 1

我在帮助器中使用MagicSuggest (http://nicolasbize.github.io/magicsuggest/)和CakePHP作为联系人搜索。我的MagicSuggestHelper类如下所示:

代码语言:javascript
复制
class MagicSuggestHelper extends AppHelper {

var $name = 'MagicSuggest';
var $helpers = array('Html');

public function suggest(array $options=null){
?>
    <div id='ms1'></div>
    <script>
        var ms = $('#ms1').magicSuggest({
            width: 300,
            highlight: true,
            allowFreeEntries: false,
            hideTrigger: true,
            expandOnFocus: true,
            useTabKey: true,
            maxSelection: 1,
            typeDelay: 0,
            name: "searchId",
            data: [
                <?php foreach($options['data'] as $suggestions){
                    echo"{\n";
                    echo"id: ".$suggestions['id'].",\n";
                    echo"name: \"".$suggestions['name']."\",\n";
                    echo"desc: \"".$suggestions['desc']."\",\n";
                    echo"image: \"".$suggestions['image']."\",\n";
                    echo"},";
                } ?>
            ],
            renderer: function(v){
            return '<div>' +
                '<div style="float:left;"><img src="' + v.image + '"/ style=\"max-width:80px;max-height:80px\""></div>' +
                '<div style="padding-left: 100px;">' +
                    '<div style="padding-top: 10px;font-style:bold;font-size:100%;color:#333">' + v.name + '</div>' +
                    '<div style="color: #999">' + v.desc + '</div>' +
                    '</div>' +
                '</div><div style="clear:both;"></div>';
            }


        });
    </script>
    <?php   
} 

这对我来说很好。但是,当选择一个项目时,我想要被直接重定向到我刚刚点击的个人资料。我尝试在第一个结果中使用onclick()-event,不幸的是,当我将CakePHP-HTML-Helper与$suggestions‘’id‘组合使用时,它不能正确触发。

在MagicSuggest网站上,我发现了一个在更改选择时触发的事件,在常见问题解答中可以找到以下代码:

代码语言:javascript
复制
$(ms).on('selectionchange', function(event, combo, selection){
 alert(selection); });

我想我可以在这里使用redirect-Function而不是alert。但是如何在这里获取id呢?即使alert(selection)也会返回一个带有"object Object“的警报,我认为不应该是这样的。

那么如何在这里获得id并重定向到我的联系人视图呢?(/contacts/ view /$id)。我过去不经常使用JavaScript,所以也请原谅初学者的错误。

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2014-05-14 19:36:52

您可以简单地执行以下操作:

代码语言:javascript
复制
$(ms).on('selectionchange', function(e,m){
   var val = this.getValue(); // this is what you want
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19436489

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档