2013-06-24 1 views
0

Я новичок как Java и HTML, у меня есть DIV, заполняемая с динамическим значениемПолучить динамическое значение из DIV в JavaScript, чтобы выполнить логику

<div id=test> 
    <span 
    Test="TBinaryText" 
    SITENAME="test site" 
    OBJECTNAME="Temperature" 
    OBJECTTYPE="0" 
    INSTANCE="1" 
    DEVICE="1" 
    PROPERTYID="85" 
    INCLUDEUNITS="1" 
    ARRAYINDEX="-1" 

    STYLE="position:absolute;top:73;left:188;height:16;width:34;z-index:43;overflow:hidden;font-  family:Arial;font-size:8pt;font-weight:700;font-style:normal;mask:0.1;">??? 
    </span> 
    </div> 

В сценарии я хранящий DIV как часть из массива (упрощенный для размещения)

 var trial = [ 
      ['string',43,23,1,test] 
        ] 

Я хочу использовать значение DIV «тест», чтобы выполнить логику, чтобы определить контактный цвет маркера на карте. Если я предупреждаю элемент массива, который содержит DIV, он отображает [Object], а не контент или значение. Я нашел и реализовал плагин jQuery для отображения содержимого, это работает для выполнения логики, если содержимое DIV является статическим числом.

var color =0; 

    $(trial[4]).each(function(){color= $(this).output()}); 

    alert([color]); 

    if (color <5){ icon= pinImageBlue} else if (color>11) {icon=pinImageRed} else {icon= pinImageGreen} 

Однако, когда я заполнить DIV, как указано выше чеку будет отображаться код, а не фактическое значение. В настоящее время, чтобы заставить плагин работать, я использую jQuery 1.3.2 в качестве ошибки более поздних версий. Для отображения я использую API google v3 и API-интерфейс инфобокса.

Плагин, который позволяет содержимое дисплея DIV является:

(function($){ 
     $.fn.output=function(d){ 
     return (this.is(":text")) ? this.val(d) : this.html(d) 
     } 
    })(jQuery); 

Есть ли способ, чтобы получить доступ к фактическому значению коды в DIV, а не сам код?

+0

Я не понимаю вопроса. Возможно, вам нужен текст(). – Hogan

+0

Какой код вы имеете в виду, когда говорите «Когда я заполняю DIV, как указано выше, в предупреждении будет отображаться« код »? – Daniel

+0

В первом разделе кода. Сайт использует свойства в диапазоне DIVs или в некоторых случаях для генерации динамического значения из базы данных. Однако я не могу напрямую получить доступ к значению базы данных, поскольку он не сохраняется. Ниже приведен ваш ответ, чтобы увидеть текстовое значение, которое было назначено, но не позволяет увидеть обновленное значение. Я не уверен, что это может быть исправлено в той же области кода или если есть отдельный подход, который используется. Спасибо за вашу помощь. – user2348039

ответ

1

Да вы ищете .text()

Вот jsfiddle где я запускаю свой код и получить значение. Я сделал это с помощью jQuery 1.8.3

+0

Это близко к тому, что я хочу с точки зрения удаления кода, однако, когда он используется на реальном сайте, он все еще только выводит ??? или любое другое статическое значение. Мне нужно иметь возможность получить живое значение, которое должно в этом случае быть числовым значением. Я также не смог определить способ использования значения из массива, поскольку мне нужно иметь возможность прокручивать несколько разных DIV. – user2348039

+0

Я продолжал смотреть на него и понял, как заставить его читать из массива, заменив «#test span» на пробную версию [4]. Однако я все еще не в состоянии получить живые ценности. Я думаю, что они еще не доступны. Я использую тот же DIV, чтобы заполнить InfoBox, и он сначала показывает статический текст в течение секунды секунды, прежде чем показывать живое значение. Что мне нужно сделать, чтобы обновить цветовую переменную и таким образом пересчитать для логики переменных значка? – user2348039

+0

Добавлены ли значения через PHP? Если это так, вам может потребоваться использовать livequery. – Daniel

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