2013-04-10 4 views
-1

Это то, что я есть внутри яваскрипта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; 

} 

Сначала это было deveoped для значения FORM и легко я могу передать POST ЗНАЧЕНИЯ в другой PHP файл, и сделать запрос , теперь я хочу изменить его просто передать некоторую ценность одного элемента в новый файл, который будет загружен ajax в другой элемент и сделать запрос, где я получил ошибку и как эхо значение из этого класса в другом файле?

+0

Когда вы передаете 'formname', это атрибут' name' атрибута '

' или 'id'? – Ian

+0

Является ли Formname, но у меня есть модифицированная функция формы, чтобы возвращать только значение od id и получить id, теперь я не знаю, как эхо это значение –

ответ

2

Чтобы сделать фактический вызов функции (в данном случае getElementById), необходимо использовать () вместо []. Кроме того, если вы хотите, чтобы содержимое элемента, используйте textContent или innerHTML свойства:

function getquerystring(what) { 

    var qstr = document.getElementById(what); 

    return qstr.innerHTML; 

} 

[] являются собственностью аксессоров в объекте или массивов.

+0

вы избили меня: уже сделал jsFiddle: http://jsfiddle.net/ Diabl0570/NuFW5/1 –

+0

'textContent || Возможно, внутри? Для oldIE – Ian

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

Извините, отредактировал мой вопрос –

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

вы можете получить текст между вашим DIV с помощью следующего кода, Для справки innerHTML, DEMO

function getquerystring(what) { 

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

    return qstr; 

} 
Смежные вопросы