gpt4 book ai didi

JQuery UI 自动完成 : how to strip tags from label before inserting into the input field?

转载 作者:行者123 更新时间:2023-11-28 00:24:58 25 4
gpt4 key购买 nike

我正在使用 JQuery UI 自动完成功能,我有一组通过 ajax 返回的项目,其中包含搜索引擎突出显示的条款(因此标签已经包含 html)。问题是每次我选择一个项目时,带有 html 标签的值都会插入到文本框中,这当然不太好。我想知道是否有办法在插入文本框之前从标签中删除所有标签

        var cache = {}, lastXhr;
$('#location_name').autocomplete({
source: function( request, response ) {

var q = request.term;
if ( q in cache ) {
response( cache[ q ] );
return;
}

lastXhr = $.getJSON( "location_search/", {q: q}, function( data, status, xhr ) {
$.each(data, function(i, v){
data[i].label = v.name + (v.address !== null ? ', ' + v.address : '');
});

cache[ q ] = data;

if ( xhr === lastXhr ) {
response( cache [q] );
}
});
},
select: function( event, ui ) {
$('#location_id').val(ui.item.id);
$('#selected_location').html(ui.item.label);
}
}).data( "autocomplete" )._renderItem = function( ul, item ) {
return $( "<li></li>" )
.data( "item.autocomplete", item )
.append( "<a>"+ item.label + "</a>" ) // + + "<br>" + item.desc + "</a>"
.appendTo( ul );
};

最佳答案

添加这个函数:

function stripHTML(oldString) {
return oldString.replace(/<&#91;^>&#93;*>/g, "");
}

并添加到您的代码中:

$('#location_name').change(function(){
$(this).val(stripHTML($(this).val());
});

关于JQuery UI 自动完成 : how to strip tags from label before inserting into the input field?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6546122/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com