繁体   English   中英

Ajax 调用后的 Dom 值

[英]Dom Value After Ajax Call

我有一张表,其中一个字段名为安全密码。 在该字段中,有一个调用 AJAX 函数的输入按钮。 返回的 AJAX 函数更新安全密码字段中的密码。 这将更新该字段的 DOM 值。

在同一页面上,我有另一个函数,它使用 Javascript 将表中的所有元素解析为一个数组。 问题是 Javascript 函数正在写入最初在安全密码字段中的内容,而不是 AJAX 函数已将其更新为的内容。

似乎 Javascript 不会提取当前的 DOM 值,而是在加载页面时提取 DOM 值。 这是 Javascript 的默认特性吗?如果是,我该如何解决这个问题,以便我可以获取表中所有字段的当前值,而不仅仅是页面加载值。

该脚本是用 PHP/Javascript 编写的,在此先感谢您的帮助。

将表格中的所有元素解析为数组的 Javascript 函数使用document.ready函数或仅在页面加载时加载一次。

在香草 JS 中

document.addEventListener('DOMContentLoaded', (event) => {
   //Where you wrote your function
})

查询

$(document).ready(function() {
    // where you have your function if you are using Jquery
});

并且 AJAX 调用不会重新加载页面。 这意味着您的 Javascript 函数不会被执行,因此它不会使用来自调用的新数据更新数组。

您需要您的 Javascript 作为 AJAX 调用的successcomplete属性的回调函数。

jQuery.ajax({
    type: 'POST',
    url: ajaxurl,
    success: function() {

        parsingFunction();

    },
    error: function() {
        alert(errorThrown);
    }
});

您是否尝试使用隐藏输入字段来存储数据而不是更新文本输入? 或者您可以尝试使用data-xxx 属性

最好的,

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM