javascript - 如何在jquery中创建一个按钮,使其href属性等于ajax响应

标签 javascript jquery ajax

有像这样的ajax请求:

$.ajax({
  type: 'POST',
  url: 'mysite/action',
  dataType: 'json',
  data: postData,
  success: function(response) {
    console.log(response);
    var input = $('<a class="btn btn-info" href="....response...." role="button">Link</a>');
    input.appendTo($("body"));
  }
});

我在 ajax 响应中获得一个链接,如何创建一个其 href 属性等于该 ajax 响应的按钮?

最佳答案

您还可以在对象中传递属性,该对象将为您处理字符串清理问题,例如转义引号:

$('<a/>', {
   'class': 'btn btn-info',
   href: response,
   role: 'button',
   text: 'Link'
}).appendTo('body');
<小时/>

为了响应下面的评论,只需将类似构造的范围传递给append。与下面的示例相比,我从属性对象中删除了 text 属性,并在后续的 append 调用中添加链接文本,以在文本之前插入图标,如果这是您想要的。

如果您想保留文本属性,当然可以通过添加带有 prepend 的跨度来实现,但我认为按顺序添加元素更具语义意义您希望它们出现。

$('<a/>', {
   'class': 'btn btn-info',
   href: response,
   role: 'button'
}).append(
   $('<span/>', { 'class': 'glyphicon glyphicon-download' })
).append(' Link')
 .appendTo('body');

关于javascript - 如何在jquery中创建一个按钮,使其href属性等于ajax响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55411008/

相关文章:

java - 如何使用 JavaScript、jQuery 和 HTML 为所有登录用户刷新页面(协作编辑)?

javascript - 如何使用 JavaScript 查找 10 GB 或更大文件中的所有唯一单词并启用搜索?

javascript - 如何将循环中的多个变量传递到 ajax json 数据中。

javascript - 多形式ajax php社交评论系统

javascript - 获取元素 id 时出现问题(未捕获的 TypeError : Cannot set property 'innerHTML' of null )

javascript - 为什么我的 AngularJS View 在使用 Parse.com JavaScript SDK 进行 AJAX 调用后没有得到更新?

javascript - 如何编写只读取 xls 和 xlsx 格式的 excel 文件的验证函数

javascript - AngularJS:一次显示数组中的一个特定对象

javascript - 使用 Vanilla javascript 设置 AJAX 数据类型?

javascript - 如何知道用户绘制的内容是否覆盖了大部分 Canvas 区域?