2013-04-10 34 views
-1

这是我的JavaScript的Javascript获得由ID元素和他的内在价值

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; 

} 

首先,它是deveoped表单里面的值,且易我可以在另一个PHP文件传输提交值,并进行查询,现在我想修改它只是简单地在新文件中传递一个元素的某个值,即将在另一个元素中加载ajax并执行查询,在哪里出错了,以及如何在另一个文件中回显此类中的值?

+0

当你通过'formname'时,它是'

'''或'id'属性的'name'属性吗? – Ian 2013-04-10 20:44:33

+0

是Formname,但我已修改表单函数返回值OD ID和获得ID,现在我不知道如何回声该值 – 2013-04-10 20:50:18

回答

2

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

function getquerystring(what) { 

    var qstr = document.getElementById(what); 

    return qstr.innerHTML; 

} 

[]是对象或数组属性访问。

+0

你打我:它已经作出了一个jsFiddle: http://jsfiddle.net/ Diabl0570/NuFW5/1 – 2013-04-10 20:32:00

+0

'textContent || innerText'也许?对于oldIE – Ian 2013-04-10 20:42:43

1

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

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

jsFiddle example

-2

这应该工作

function getquerystring(what) { 

    var qstr = document.getElementById[what].innerHTML; 

    return qstr; 

} 
0

你需要使用括号 “()” 的函数调用。此外,您需要元素的innerText,而不是整个元素。

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

对不起,编辑我的问题 – 2013-04-10 20:42:06

0

,如果你想在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." 
} 
0

您可以通过使用下面的代码, 作为参考innerHTML获取文本在DIV之间,DEMO

function getquerystring(what) { 

    var qstr = document.getElementById(what).innerHTML; 

    return qstr; 

}