变量dos'设置不正确
Variable doesn't get set properly
当用户单击索引页面上的删除按钮时。模态弹出,使用第一个函数,URL路径被传递到模态中删除按钮的taskdestroylink
属性。到目前为止一切都很好。每次我点击链接,属性都会被正确设置。
第二个功能是向服务器发送AJAX请求。在页面重载中,第一个请求运行良好,但第二个请求保持第一个请求的路由。所以var href
第一次被正确设置,但如果我试图删除另一个任务,href
值仍然属于第一个。这很奇怪,因为正如我提到的,taskdestroylink
属性显示了DOM中的新值。
那么var href = $(this).data("taskdestroylink");
有什么问题呢?为什么它不设置新的值?
点击此链接打开模式获取:
<li>
<a href="#" data-toggle="modal" role="button" data-target="#delete-task-modal" class="open-delete-task-modal" data-taskdeletelink="<%= user_task_path(current_user, task) %>">Delete Task</a>
</li>
模式:
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal" id="deletetaskclose">Close</button>
<a href="#" id="delete-task-link" type="button" class="btn btn-danger" data-taskdestroylink >Delete Task</a>
</div>
JS:
$(document).on('click', '.open-delete-task-modal', function (event) {
var taskDeleteLink = $(this).data("taskdeletelink");
$('#delete-task-link').attr("data-taskdestroylink", taskDeleteLink);
});
$(document).on('click', '#delete-task-link', function (event) {
var href = $(this).data("taskdestroylink");
alert(href);
$.ajax({
type: "DELETE",
url: href,
dataType: "script"
});
});
混合data()
和attr()
是个坏主意,所以选择一个并坚持使用。
更改
.attr("data-taskdestroylink", taskDeleteLink);
至
.data("taskdestroylink", taskDeleteLink);
data()
使用自己的内部存储,而不是实际的属性。
相关文章:
- 变量dos'设置不正确
- Ember.js{{render}}助手模型设置不正确
- 使用 Javascript/JQuery 使用 Ajax 加载 Google Maps API,回调设置不正确
- 关联数组设置不正确
- H1 标题设置不正确
- 标头活动类设置不正确
- Mediaelement.js setCurrentTime在Firefox和使用flash时设置的时间不正确
- Phantomjs 抛出“此页面使用框架,但您的浏览器不支持它们”错误,即使在设置了正确的用户代理后也是如此
- 为什么Raphael.js的动画设置到不正确的坐标
- D3嵌套格式设置日期不正确
- 在if/else if的函数作用域中设置的值不正确
- 使用Javascript设置时,表单操作不正确
- Ember.js复选框绑定初始值设置不正确
- 在Javascript中设置CSS 3过渡和转换在Chrome中工作,但在IE 10, FF中不正确
- 元素的同位素高度设置不正确
- HTML5 & # 39;时间# 39;标签设置值不正确
- 为什么mime类型通常设置不正确?
- 下拉菜单中选择的值设置不正确
- Object3D.applyMatrix()设置不正确的比例
- Cookie设置不正确