小编Ale*_*ani的帖子

使用ajax提交表单

我正在开发一个应用程序(我的大学的一种社交网络).我需要添加注释(在特定数据库中插入一行).为此,我在html页面中有一个包含各种字段的HTML表单.在提交时我不使用表单的操作,但我在提交表单之前使用自定义javascript函数来详细说明一些数据.

function sendMyComment() {

    var oForm = document.forms['addComment'];
    var input_video_id = document.createElement("input");
    var input_video_time = document.createElement("input");

    input_video_id.setAttribute("type", "hidden");
    input_video_id.setAttribute("name", "video_id");
    input_video_id.setAttribute("id", "video_id");
    input_video_id.setAttribute("value", document.getElementById('video_id').innerHTML);

    input_video_time.setAttribute("type", "hidden");
    input_video_time.setAttribute("name", "video_time");
    input_video_time.setAttribute("id", "video_time");
    input_video_time.setAttribute("value", document.getElementById('time').innerHTML);

    oForm.appendChild(input_video_id);
    oForm.appendChild(input_video_time);

    document.forms['addComment'].submit();
}
Run Code Online (Sandbox Code Playgroud)

最后一行将表单提交到正确的页面.它工作正常.但我想使用ajax提交表单,我不知道如何做到这一点,因为我不知道如何捕获表单输入值.有人可以帮帮我吗?

html javascript ajax jquery

17
推荐指数
5
解决办法
9万
查看次数

ajax 调用后 getElementById 不起作用

我正在使用 javascript / ajax 开发一个网络应用程序。

问题是,在我的应用程序(一种社交网络)中,我需要读取有关用户的信息(数据库中的帖子)。为此,我使用 PHP 专用服务与数据库交互。该服务返回主页的 HTML 格式。

现在,我通过 AJAX 调用使用此服务来引入 HTML 并将其注入到我的页面中。问题是,当我尝试使用 javascript 从注入的 HTML 中获取元素时:

document.getElementById('commentsArea_xxx').innerHTML=xmlhttp.responseText;
Run Code Online (Sandbox Code Playgroud)

getElementById返回null

我认为问题在于 AJAX 调用后浏览器不会更新文档,因此文档中不存在“commentsArea_xxx”!

我该如何解决这个问题?

这是我的代码:

function moreComments(id){
        var footerIcon = document.getElementById('footer');
            footerIcon.innerHTML="<div style='text-align:center;'><img src='images/home_selected.png' onClick='loadHome()'/><img id='cameraButton' src='images/camera.png'/><img src='images/list.png' onClick='loadMyVideo()'/></div>";
            pageOld=pageCurrent;
            pageCurrent=0;
            document.getElementById("ajaxContent").innerHTML="<div id='wrapper' style='top:95px;'><div id='scroller'><ul id='thelist'><li style='text-align:center;'><img src='images/loading.gif' style='text-align:center;'></li></ul></div></div>";
            var xmlhttp;
            if (window.XMLHttpRequest){
                xmlhttp=new XMLHttpRequest();
            }
            else{
                xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
            }
            xmlhttp.onreadystatechange=function(){
                if (xmlhttp.readyState==4 && xmlhttp.status==200){
                    document.getElementById("commentsArea_"+id).innerHTML=xmlhttp.responseText;
                    loaded();
                    me();
                    setTimeout(function () {myScroll.refresh();}, 0);
                }
            }
            xmlhttp.open("GET","home_more.php?id="+id,true);
            xmlhttp.send(); …
Run Code Online (Sandbox Code Playgroud)

html javascript ajax

3
推荐指数
1
解决办法
1万
查看次数

标签 统计

ajax ×2

html ×2

javascript ×2

jquery ×1