?
Solved

PHP inside of JQuery

Posted on 2014-02-25
8
Medium Priority
?
459 Views
Last Modified: 2014-02-26
How do I place PHP inside of JQuery?

I have the following:
$(document).ready(function() {
	$('input[type="radio"]').click(function() {
		if ($(this).attr("value") == "custom yes") {
			$("#custom-hidden-<?php echo $id; ?>").show('slow');
		}
		if ($(this).attr("value") == "custom no") {
			$("#custom-hidden").hide('fast');
		}
	});

Open in new window


I need to know how to write the <?php echo $id; ?> Part.
0
Comment
Question by:rgranlund
8 Comments
 
LVL 54

Expert Comment

by:Scott Fell, EE MVE
ID: 39887391
You would not put your php inside of jquery, but you could wrap the entire piece of code around php where you echo the entire thing.
0
 
LVL 75

Expert Comment

by:käµfm³d 👽
ID: 39887394
Does what you posted not work?
0
 
LVL 58

Accepted Solution

by:
Gary earned 2000 total points
ID: 39887402
Nothing wrong with the way you have it but that javascript must be in your php page, you cannot have it in an external js file.
For things like this I tend to drop an hidden text field in the php page and call that field from the js file so I can keep everything separate.
0
Free Tool: SSL Checker

Scans your site and returns information about your SSL implementation and certificate. Helpful for debugging and validating your SSL configuration.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 
LVL 111

Expert Comment

by:Ray Paseur
ID: 39887438
Differences between client and server applications are explained in this article.
http://www.experts-exchange.com/Web_Development/Web_Languages-Standards/A_11271-Understanding-Client-Server-Protocols-and-Web-Applications.html

Basically, PHP runs on the server and generates the HTML document (including CSS and JavaScript such as jQuery).  After PHP has generated the document it sends the document to the client and goes back to sleep to await the next request.  The next request may come from a human mouse-click or from a jQuery method, but whatever PHP sent in its initial HTML document is what the browser has to work with unless and until another request is made.
0
 
LVL 84

Expert Comment

by:Dave Baldwin
ID: 39887464
On one of my own pages, I have a javascript link that is actually a PHP page that generates the javascript.  The javascript link is:
<script type="text/javascript" src="ip.php"></script>

Open in new window

And the PHP page is:
<?php 
//"ip.php" example- display user IP address on any page
Header("content-type: application/x-javascript");
$remoteIP=$_SERVER['REMOTE_ADDR'];
echo "document.write(\"<div><b>Your IP address is: " . $remoteIP . "</b></div>\")";
?>

Open in new window

0
 
LVL 31

Expert Comment

by:Marco Gasi
ID: 39887607
I know another way to do that if you have your javascript in an external file:

in the head section of your page you can write:

<script>var id = <?=$id ?></script>
<script type='tex/javascript' src='your_script.js'></script>

Open in new window


Then in your script you simply use the javascript variable id:

$(document).ready(function() {
	$('input[type="radio"]').click(function() {
		if ($(this).attr("value") == "custom yes") {
			$("#custom-hidden-"+id).show('slow');
		}
		if ($(this).attr("value") == "custom no") {
			$("#custom-hidden").hide('fast');
		}
	});
                                  

Open in new window


It works fine but I'm not sure if this is a good practice...
0
 
LVL 84

Expert Comment

by:Dave Baldwin
ID: 39887717
I like that too, I'll probably use that somewhere.
0
 
LVL 111

Expert Comment

by:Ray Paseur
ID: 39887718
@marqusG: I don't see anything wrong at all -- it makes perfect sense to me.  I point out the client/server difference because sometimes there is confusion about what happens first and next, what happens on the server then on the client.  Both your example and Dave's example seem quite feasible.  At least that's the way I see it.

Best to all, ~Ray
0

Featured Post

Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Nothing in an HTTP request can be trusted, including HTTP headers and form data.  A form token is a tool that can be used to guard against request forgeries (CSRF).  This article shows an improved approach to form tokens, making it more difficult to…
This article demonstrates how to create a simple responsive confirmation dialog with Ok and Cancel buttons using HTML, CSS, jQuery and Promises
The viewer will learn how to count occurrences of each item in an array.
The viewer will learn the basics of jQuery including how to code hide show and toggles. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery…
Suggested Courses

599 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question