Javascript通过ID及其内部值获取元素

Javascript get element by ID and his inside value

本文关键字:获取 元素 内部 通过 ID Javascript      更新时间:2023-09-26

这是我在javascript中的内容

function xmlhttpPost(strURL,formname,responsediv,responsemsg) {
    var xmlHttpReq = false;
    var self = this;
    // Xhr per Mozilla/Safari/Ie7
    if (window.XMLHttpRequest) {
        self.xmlHttpReq = new XMLHttpRequest();
    }
    // per tutte le altre versioni di IE
    else if (window.ActiveXObject) {
        self.xmlHttpReq = new ActiveXObject("Microsoft.XMLHTTP");
    }
    self.xmlHttpReq.open('POST', strURL, true);
    self.xmlHttpReq.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    self.xmlHttpReq.onreadystatechange = function() {
        if (self.xmlHttpReq.readyState == 4) {
            // Quando pronta, visualizzo la risposta del form
            updatepage(self.xmlHttpReq.responseText,responsediv);
        }
        else{
            // In attesa della risposta del form visualizzo il msg di attesa
            updatepage(responsemsg,responsediv);

        }
    }
    self.xmlHttpReq.send(getquerystring(formname));
}

function getquerystring(formname) {
    var qstr = document.getElementById[formname];
    return qstr;
}
function updatepage(str,responsediv){
    document.getElementById(responsediv).innerHTML = str;
}

首先它是为FORM值开发的,很容易我可以在另一个PHP文件中传输POST值,并进行查询,现在我想修改它只是简单地在新文件中传输一个元素的一些值,这将在另一个元素中加载ajax并进行查询,在哪里我错了,如何从另一个文件中的这个类中返回值?

您应该使用()而不是[]来进行实际的函数调用(在本例中为getElementById)。此外,如果需要元素的内容,请使用textContentinnerHTML属性:

function getquerystring(what) {
    var qstr = document.getElementById(what);
    return qstr.innerHTML;
}

[]是对象或数组中的属性访问器

要获取div的内容,返回innerHTML属性并将[]更改为()

function getquerystring(what) {
    var qstr = document.getElementById(what).innerHTML;
    return qstr;
}
<<p> jsFiddle例子/strong>

需要在函数调用中使用圆括号"()"。此外,您需要元素的innerText,而不是整个元素。

function getquerystring(what) {
    var qstr = document.getElementById(what);
    return qstr.innerText;
}

如果您想在div中获取文本,请尝试:

<div id="test">
  Some <span class="foo">sample</span> text.
</div>
function getquerystring(what) {
var node = document.getElementById(what),
var htmlContent = node.innerHTML; // htmlContent would give "Some <span class='foo'>sample</span> text."
var textContent = node.textContent; // textContent would give "Some sample text."
}

您可以使用以下代码获取div之间的文本:对于innerHTML的引用,DEMO

function getquerystring(what) {
    var qstr = document.getElementById(what).innerHTML;
    return qstr;
}

应该可以了

function getquerystring(what) {
    var qstr = document.getElementById[what].innerHTML;
    return qstr;
}