Javascript jqueryajax没有';无法使用生成的标记
我们的应用程序中有一个搜索功能,当用户键入某个内容时,结果将根据过滤器生成并显示在页面上 以下是每次按下键后的动态结果:Javascript jqueryajax没有';无法使用生成的标记,javascript,jquery,bootstrap-popover,Javascript,Jquery,Bootstrap Popover,我们的应用程序中有一个搜索功能,当用户键入某个内容时,结果将根据过滤器生成并显示在页面上 以下是每次按下键后的动态结果: htmlResult = ` <li> <div> <img src='${user.avatar}' width='80' alt='${user.fullName}' /> </div> <a tabindex='0' class ='btn2'
htmlResult = `
<li>
<div>
<img src='${user.avatar}' width='80' alt='${user.fullName}' />
</div>
<a tabindex='0'
class ='btn2'
data-html='true'
data-toggle='popover'
data-content="<div class='list-group'><a href='#' class='item' data-val1-value='0'>Val1</a></div>">add</a>
</li>
`;
此代码有两个问题:
- 单击
三次后将显示弹出窗口。项目
- jqueryajax不会成功,它在控制台上显示
错误400错误请求
这可能会有所帮助。对于popover,您必须重新初始化动态内容附加到HTML中的所有内容。
对于Ajax 400,这是因为URL没有找到路由路径,请再次检查此请求的后端要求。在上述代码中,URL设置为字符串“URL”,这似乎可以解释400错误。@Pango这实际上是一个URL,我不想将实际URL放在这里。很酷,只是检查一下。我认为你不想把你的参数串起来,只要传递参数就行了。
$("[data-toggle=popover]").popover();
$(document).on('click', '.btn2', function(event) {
event.preventDefault();
$(this).popover({ html: true });
});
$(document).on('click', '.item', function (event) {
event.preventDefault();
const value1 = $(this).attr('data-val1-value');
const params = {
value1: value1
};
$.ajax({
type: "POST",
url: endPoint,
dataType: 'json',
contentType: 'application/json',
data: JSON.stringify(params),
success: (result) => {
// refresh
}
});
});