Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery ui Jquery ui自动完成1.9源函数访问选项_Jquery Ui - Fatal编程技术网

Jquery ui Jquery ui自动完成1.9源函数访问选项

Jquery ui Jquery ui自动完成1.9源函数访问选项,jquery-ui,Jquery Ui,在我为jquery ui autocomplete 1.9.1的源选项定义的函数中,我想访问jquery ui autocomplete的选项 通过检查此函数中的“this”,我发现我可以使用this.options访问选项。我想知道这样做是否正确,这样我就不会依赖于内部规范了?我让它这样工作。应该有更简单的方法,但我没找到 <script> $('#element').autocomplete({ self: null, myOption:

在我为jquery ui autocomplete 1.9.1的源选项定义的函数中,我想访问jquery ui autocomplete的选项


通过检查此函数中的“this”,我发现我可以使用this.options访问选项。我想知道这样做是否正确,这样我就不会依赖于内部规范了?

我让它这样工作。应该有更简单的方法,但我没找到

<script>
    $('#element').autocomplete({
        self: null,
        myOption: 'test',
        source: function (request, response) {
            self = this;
            var matcher = new RegExp($.ui.autocomplete.escapeRegex(request.term), "i");
            response($('#combobox').children("option").map(function () {
                var text = $(this).text();
                if (this.value && (!request.term || matcher.test(text)))
                    return {
                        label: text.replace(
                            new RegExp(
                            "(?![^&;]+;)(?!<[^<>]*)(" +
                            $.ui.autocomplete.escapeRegex(request.term) +
                            ")(?![^<>]*>)(?![^&;]+;)", "gi"
                            ), "<strong>$1</strong>"),
                        value: text
                    };
            }));
        },
        select: function (event, ui) {
            console.log(self.options.myOption);
        }
    });
</script>
<html>
    <input type="text" id="element" />
    <select id="combobox">
        <option value="t1">Python</option>
        <option value="t2">PHP</option>
        <option value="t3">ASP.NET</option>
        <option value="t4">C++</option>
        <option value="t5">Ruby</option>
    </select>   
</html>

$('#元素')。自动完成({
self:null,
myOption:'测试',
来源:功能(请求、响应){
self=这个;
var matcher=newregexp($.ui.autocomplete.escapeRegex(request.term),“i”);
响应($(“#组合框”).children(“选项”).map(函数(){
var text=$(this.text();
if(this.value&(!request.term | | matcher.test(text)))
返回{
标签:text.replace(
新正则表达式(
(?![^&;]+;)(?!)(?![^&;]+;),“gi”
)“$1”,
值:文本
};
}));
},
选择:功能(事件、用户界面){
log(self.options.myOption);
}
});
python
PHP
ASP.NET
C++
红宝石
找到提示

查一查小提琴