javascript - 如何使用 jQuery 在 html 中连接和传递参数值
问题描述
我正在使用 jQuery 从 ajax rest 调用中获取值,我试图将这些值连接到一个“a”标签中,以便为我的结果创建一个分页部分(附图片)。
我正在发送 HTML (divHTMLPages) 但结果格式不正确且无法正常工作,我尝试使用双引号和单引号但仍然格式不正确。所以,我想知道这是否是完成创建分页所需的好方法。'a' 标记将触发带有四个参数的 onclick 事件(查询休息呼叫、部门、行限制和显示的起始行)
if (_startRow == 0) {
console.log("First page");
var currentPage = 1;
// Set Next Page
var nextPage = 2;
var startRowNextPage = _startRow + _rowLimit + 1;
var query = $('#queryU').val();
// page Link
divHTMLPages = "<strong>1</strong> ";
divHTMLPages += "<a href='#' onclick='getRESTResults(" + query + "', '" + _reg + "', " + _rowLimit + ", " + _startRow + ")>" + nextPage + "</a> ";
console.log("Next page: " + nextPage);
}
提前感谢您对此的任何帮助。
解决方案
与其尝试在 HTML 字符串中键入函数应如何调用,不如将事件侦听器附加到相关元素上要优雅得多。例如,假设您要插入元素的父元素被调用parent
,您可以执行以下操作:
const a = document.createElement('a');
a.href = '#';
a.textContent = nextPage;
a.onclick = () => getRESTResults(query, _reg, _rowLimit, _startRow);
parent.appendChild(a);
一旦附加了事件侦听器,就像上面一样onclick
,请确保不要更改innerHTML
容器innerHTML += <something>
的,或使用(它不会重新解析整个容器的内容)。createElement
appendChild
insertAdjacentHTML
推荐阅读
- javascript - 如何为 div 设置动画以在单击时淡入或滑入
- java - 如何每隔一定数量的字符分隔和打印一个字符串?
- javascript - jQuery: $.when().done() 不等待/从不触发
- android - Android Studio 不接受“this”作为 OnRefreshListener 中的 LoaderCallBack 参数
- html - 在 vw 中设置 CSS / font-size,用户尝试缩放网站
- php - 从 php 文件执行脚本
- assembly - 存储两位数的用户输入
- angular6 - 无法读取未定义的属性“loadChildren”中的错误
- c# - Linq 的 IEnumerable.Select 是否返回对原始 IEnumerable 的引用?
- sql - 左外连接并不总是匹配