Problem using getElementById (). getValue on FBJS / Facebook!

I use this code to create the hidden HTML code on Facebook:

echo "<div id=\"y257y\" style=\"display:none;\">".$fdesc."</div>";

And I am trying to return this element to JS using the following code

newVal=document.getElementById('y257y').getValue();

But I get an error: Undefined

Can someone kindly help me?

Thank.

- Ahsan

+3
source share
2 answers

Instead:

newVal = document.getElementById('y257y').getValue();

try using:

newVal = document.getElementById('y257y').innerHTML;

Are you using any JavaScript library like jQuery or Prototype? If you are using jQuery:

newVal = $('#y257y').html();

Other offers:

Use a hidden form element:

echo "<input type=hidden id=y257y value=\"$fdesc\">";

and in JavaScript:

newVal = document.getElementById('y257y').value;

Or just print the tag <script>:

echo "<script>newVal = \"$fdesc\";</script>";

and there is no need to find the value in the DOM - this is already in JavaScript.

+4
source

? getValue, :

$fdesc = str_replace('<', '&lt;', $fdesc);
$fdesc = str_replace('>', '&gt;', $fdesc);

echo "<textarea id=\"y257y\" style=\"display:none;\">".$fdesc."</textarea>";
newVal=document.getElementById('y257y').getValue();
newVal = newVal.replace("&gt;", ">")
newVal = newVal.replace("&lt;", "<")

- , , facebook . , :

$fdesc = <<<EOD
 <div>Here is your html</div>
 <p>And some more </p>
EOD;

$fdesc = str_replace("'", "\'", $fdesc);   //Escape single quotes
$fdesc = str_replace("\n", "";', $fdesc);   //Get rid of line breaks

 echo "var fdesc = '$fdesk';";
0

All Articles