2013-04-10 36 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; 

}