JavaScript - Help!!one Error ( Illegal Start Of Expression)
Code:
/* Assignment * Change Request #7 Requestor: Ninfa Pendleton - Rapid City, SD Write the program in Java (with a graphical user interface) and have it calculate and display the mortgage payment amount from user input of the amount of the mortgage and the user's selection from a menu of available mortgage loans: - 7 years at 5.35% - 15 years at 5.5% - 30 years at 5.75% Use an array for the mortgage data for the different loans. Read the interest rates to fill the array from a sequential file. Display the mortgage payment amount followed by the loan balance and interest paid for each payment over the term of the loan. Add graphics in the form of a chart. Allow the user to loop back and enter a new amount and make a new selection or quit. Please insert comments in the program to document the program. *///////////////////////////////////////////////// // Java utilities import javax.swing.*; import java.awt.event.*; import java.lang.Math.*; import java.text.NumberFormat; import javax.swing.ButtonGroup; import java.awt.Graphics; public class MortgageCR7 extends JFrame { public static void main(String[] args) { new MortgageCalculator5(); } // Declare buttons, text fields, and labels private JButton calculate; private JButton exit; private JButton calc; private JTextField enterAmount; private JTextField enterInterest; private JTextField enterMonth; private JLabel loan; private JLabel interest; private JLabel mRate; private JLabel blankspace; private JLabel data; private JLabel data1; private JLabel data2; private JRadioButton term7; private JRadioButton term15; private JRadioButton term30; public MortgageCR7() { // set the size of the frame this.setSize(350, 350); // what the "exit" button will do when clicked. this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // Title of frame this.setTitle("Mortgage Calculator"); // Create the layout JPanel mainpanel = new JPanel(); // panel1 JPanel panel1 = new JPanel(); data = new JLabel("Please fill out the amount of the loan."); panel1.add(data); mainpanel.add(panel1); // panel2 JPanel panel2 = new JPanel(); loan = new JLabel("Amount of Loan"); enterAmount = new JTextField(8); panel2.add(loan); panel2.add(enterAmount); mainpanel.add(panel2); // panel3 JPanel panel3 = new JPanel(); data1 = new JLabel("Choose between rate & term"); panel3.add(data1); mainpanel.add(panel3); // panel4 JPanel panel4 = new JPanel(); ButtonGroup choice = new ButtonGroup(); term7 = new JRadioButton("30 Years @ 5.75%"); term15 = new JRadioButton("15 Years @ 5.5%"); term30 = new JRadioButton("7 Years @ 5.35%"); panel4.add(term7); choice.add(term7); panel4.add(term15); choice.add(term15); panel4.add(term30); choice.add(term30); mainpanel.add(panel4); // panel5 JPanel panel5 = new JPanel(); calc = new JButton("Calculate Choice"); panel5.add(calc); mainpanel.add(panel5); // panel6 JPanel panel6 = new JPanel(); data2 = new JLabel("Or fill in yourself."); panel6.add(data2); mainpanel.add(panel6); //panel7 JPanel panel7 = new JPanel(); interest = new JLabel("Interest Rate"); enterInterest = new JTextField(8); panel7.add(interest); panel7.add(enterInterest); mainpanel.add(panel7); // panel8 JPanel panel8 = new JPanel(); mRate = new JLabel("Term of Loan"); enterMonth = new JTextField(8); panel8.add(mRate); panel8.add(enterMonth); mainpanel.add(panel8); // panel9 JPanel panel9 = new JPanel(); blankspace = new JLabel(" "); panel9.add(blankspace); mainpanel.add(panel9); // panel10 JPanel panel10 = new JPanel(); calculate = new JButton("Calculate"); exit = new JButton("Exit"); panel10.add(calculate); panel10.add(exit); mainpanel.add(panel10); // Creating the event listener ClickListener click = new ClickListener(); // Create Action Listeners calculate.addActionListener(click); exit.addActionListener(click); calc.addActionListener(click); // adds all 10 panels together this.add(mainpanel); // set see the frame this.setVisible(true); } public void paint(Graphics g) { double width = 900.00; int height= 400; double x=1.0; double y=0.0; int counter = 0; double xincrement = (width/(dblLoanDuration*12)); double yincrement = height/dblLoanAmount; g.drawString("Payments", 65, 10); while (counter <= 10) { x = x + xincrement; g.drawString(Integer.toString((int)((((dblLoanDuration*12)/10)*counter))), (int)((width/10)*counter)+55, 20); counter++; drawn = true; } double amount=dblLoanAmount; double payment=amount/12; g.drawString("Amount", 0, 20); while (y < height) { y = y + (height/12); g.drawString(paymentFormat.format(amount), 0, (int)y); amount = amount-payment; } // begin the events // Create Action Listeners calculate.addActionListener(click); public void actionPerformed(ActionEvent p) { if (p.getSource() == calc) // if user clicks the calculate button { try { // convert text entry into numbers double receiveAmount = Double.parseDouble(enterAmount.getText()); // create the arrays for the three different loans int Terms[] = {7, 15, 30}; // loan in years double InterestArray[] = {5.35, 5.5, 5.75}; // interest as a percent // Array 1 if (term7.isSelected()) { double receiveInterest = InterestArray[0]; double receiveTerms = Terms[0]; double interest1 = (receiveInterest / (12 * 100)); double term1 = (receiveTerms * 12); double term2 = (1 + interest1); double pay1 = Math.pow(term2, -term1); double payment = ((receiveAmount * interest1) / (1 - pay1)); double interestpay; double remainBal = receiveAmount; // create the number format NumberFormat fixdecimal = NumberFormat.getNumberInstance(); fixdecimal.setMinimumFractionDigits(2); fixdecimal.setMaximumFractionDigits(2); // Create counter for (int x = 1; x <= term1; x++) { interestpay = (remainBal * interest1); double interestout = 0; remainBal = (remainBal - (payment - interestpay)); interestout = (interestout + interestpay); // The output based on amount input and loan selection. JOptionPane.showMessageDialog(null, "Original Balance = $" + receiveAmount + "\nPayment #" + x + "\nMonthly Payment $" + fixdecimal.format(payment) + "\nRemaining Balance $" + fixdecimal.format(remainBal) + "\nInterest Paid $" + fixdecimal.format(interestpay), "Payment History", JOptionPane.PLAIN_MESSAGE); } // Exit or enter option. int finalanswer = JOptionPane.showConfirmDialog(null, "Would you like to input a new amount?" + "\n\n(chose Yes to continue or No to Exit)", "Continue", JOptionPane.YES_NO_OPTION); if (finalanswer == JOptionPane.NO_OPTION) { System.exit(0); } else if (finalanswer == JOptionPane.YES_OPTION) { // if the user chooses 'yes' the amount field will blank out enterAmount.setText(null); } // Array 2 } else if (term15.isSelected()) { double receiveInterest = InterestArray[1]; double receiveTerms = Terms[1]; double interest1 = (receiveInterest / (12 * 100)); double term1 = (receiveTerms * 12); double term2 = (1 + interest1); double pay1 = Math.pow(term2, -term1); double payment = ((receiveAmount * interest1) / (1 - pay1)); double interestpay; double remainBal = receiveAmount; // create the number format NumberFormat fixdecimal = NumberFormat.getNumberInstance(); fixdecimal.setMinimumFractionDigits(2); fixdecimal.setMaximumFractionDigits(2); // Create counter for (int x = 1; x <= term1; x++) { interestpay = (remainBal * interest1); double interestout = 0; remainBal = (remainBal - (payment - interestpay)); interestout = (interestout + interestpay); // The output based on amount input and loan selection. JOptionPane.showMessageDialog(null, "Original Balance = $" + receiveAmount + "\nPayment #" + x + "\nMonthly Payment $" + fixdecimal.format(payment) + "\nRemaining Balance $" + fixdecimal.format(remainBal) + "\nInterest Paid $" + fixdecimal.format(interestpay), "Payment History", JOptionPane.PLAIN_MESSAGE); } // Exit or enter option. int finalanswer = JOptionPane.showConfirmDialog(null, "Would you like to enter a new amount?" + "\n\n(chose Yes to continue or No to Exit)", "Continue", JOptionPane.YES_NO_OPTION); if (finalanswer == JOptionPane.NO_OPTION) { System.exit(0); // If the user chooses 'yes' the amount field will blank out } else if (finalanswer == JOptionPane.YES_OPTION) { enterAmount.setText(null); } // Array 3 } else if (term30.isSelected()) { double receiveInterest = InterestArray[2]; double receiveTerms = Terms[2]; double interest1 = (receiveInterest / (12 * 100)); double term1 = (receiveTerms * 12); double term2 = (1 + interest1); double pay1 = Math.pow(term2, -term1); double payment = ((receiveAmount * interest1) / (1 - pay1)); double interestpay; double remainBal = receiveAmount; // create the number format NumberFormat fixdecimal = NumberFormat.getNumberInstance(); fixdecimal.setMinimumFractionDigits(2); fixdecimal.setMaximumFractionDigits(2); // Create counter for (int x = 1; x <= term1; x++) { interestpay = (remainBal * interest1); double interestout = 0; remainBal = (remainBal - (payment - interestpay)); interestout = (interestout + interestpay); // The output based on amount input and loan selection. JOptionPane.showMessageDialog(null, "Original Balance = $" + receiveAmount + "\nPayment #" + x + "\nMonthly Payment $" + fixdecimal.format(payment) + "\nRemaining Balance $" + fixdecimal.format(remainBal) + "\nInterest Paid $" + fixdecimal.format(interestout), "Payment History", JOptionPane.PLAIN_MESSAGE); } // Exit or enter option. int finalanswer = JOptionPane.showConfirmDialog(null, "Would you like to enter a new amount?" + "\n\n(chose Yes to continue or No to Exit)", "Continue", JOptionPane.YES_NO_OPTION); if (finalanswer == JOptionPane.NO_OPTION) { System.exit(0); // If the user chooses 'yes' the amount field will blank out } else if (finalanswer == JOptionPane.YES_OPTION) { enterAmount.setText(null); } } } catch (NumberFormatException e) { } } // Create a new event if (p.getSource() == calculate) { try { // turn text entries into numbers double receiveAmount = Double.parseDouble(enterAmount.getText()); double receivePerc = Double.parseDouble(enterInterest.getText()); double receiveTerm = Double.parseDouble(enterMonth.getText()); double receiveInterest = receivePerc; double receiveTerms = receiveTerm; double interest1 = (receiveInterest / (12 * 100)); double term1 = (receiveTerms * 12); double term2 = (1 + interest1); double pay1 = Math.pow(term2, -term1); double payment = ((receiveAmount * interest1) / (1 - pay1)); double interestpay; double remainBal = receiveAmount; // create the number format NumberFormat fixdecimal = NumberFormat.getNumberInstance(); fixdecimal.setMinimumFractionDigits(2); fixdecimal.setMaximumFractionDigits(2); // Create counter for (int x = 1; x <= term1; x++) { interestpay = (remainBal * interest1); double interestout = 0; remainBal = (remainBal - (payment - interestpay)); interestout = (interestout + interestpay); // The output based on amount input and loan selection. JOptionPane.showMessageDialog(null, "Original Balance = $" + receiveAmount + "\nPayment #" + x + "\nMonthly Payment $" + fixdecimal.format(payment) + "\nRemaining Balance $" + fixdecimal.format(remainBal) + "\nInterest Paid $" + fixdecimal.format(interestout), "Payment History", JOptionPane.PLAIN_MESSAGE); } // Exit or enter option. int finalanswer = JOptionPane.showConfirmDialog(null, "Would you like to enter a new amount?" + "\n\n(chose Yes to continue or No to Exit)", "Continue", JOptionPane.YES_NO_OPTION); if (finalanswer == JOptionPane.NO_OPTION) { System.exit(0); // if the user chooses 'yes' the amount field will blank out } else if (finalanswer == JOptionPane.YES_OPTION) { // resets the entry fields enterAmount.setText(null); enterInterest.setText(null); enterMonth.setText(null); } } catch (NumberFormatException e) { } } // Event Exit button if (p.getSource() == exit) { System.exit(0); } } } } Similar TutorialsStrange problem here... I'm implementing google's JS tracking code verbatim which determines whether or not the current site is using HTTP or HTTPS. It builds a dynamic URL used as the "SRC" parameter in the SCRIPT statement. On browsers I'm testing with(FF, IE, Chrome) there's no problem running the code. However, there are some people in the office who get an FF or IE error (same versions as mine) on the URL as the SRC parameter. The error, in the FF Error Console, is this: Quote: illegal character http://www.google-analytics.com/ga.js ? ? ? ? --> question marks appear in console I can't figure it out since I can't create this error on any of my browsers. Could this be related to something like browser security settings or add-ons? uncaught exception: Syntax error, unrecognized expression:
Code: :([rel*=qnt_Rc]) I have this code: Code: grpDiv = $$('div:([rel*=' + txt_val + '])'); Which when operaterated on, we have: Code: grpDiv = $$('div:([rel*=qnt_Rc]) This error: uncaught exception: Syntax error, unrecognized expression: Code: :([rel*=qnt_Rc]) Is new. The code in question has been around for about a year and no issues with prototype 1.6.1. Yet we upgraded to 1.7, and this error started showing. any ideas what this could be and how to fix it? thanks EDIT: Posted in the wrong forum. Here's my code: Code: // Lab09GRFX04st.java // This is the student, starting file for the Lab09GRFX04st assignment. // The Lab09 practice and graded assignment is open ended. // No code will be provided in the student, starting file. // There are also no files with solutions for the different point versions. // Check the Lab assignment document for additional details. import java.awt.*; import java.applet.*; public class Lab09GRFX04st extends Applet { public void paint(Graphics g) { Meal order1 = new Meal(g,0,0); } } class Tray { public Tray(Graphics g, int x, int y) { g.setColor(Color.lightGray); g.fillRect(x+10,y+100,400,200); g.setColor(Color.black); g.drawRect(x+25,y+115,370,170); } } class Utensil { public Utensil(Graphics g, int x, int y) { g.setColor(Color.gray); g.fillRect(x+60,y+200,10,60); } } class Fork extends Utensil { private int x; private int y; public Fork(Graphics g, int x1, int y1) { super(g,x1,y1); x = x1; y = y1; drawFork(g); } public void drawFork(Graphics g) { g.setColor(Color.gray); g.fillRect(x+50,y+185,30,15); Polygon prong1 = new Polygon(); prong1.addPoint(x+50,y+185); prong1.addPoint(x+56,y+185); prong1.addPoint(x+53,y+165); g.fillPolygon(prong1); Polygon prong2 = new Polygon(); prong2.addPoint(x+61,y+185); prong2.addPoint(x+67,y+185); prong2.addPoint(x+64,y+165); g.fillPolygon(prong2); Polygon prong3 = new Polygon(); prong3.addPoint(x+74,y+185); prong3.addPoint(x+80,y+185); prong3.addPoint(x+77,y+165); g.fillPolygon(prong3); } } class Spoon extends Utensil { private int x; private int y; public Spoon(Graphics g,int x1,int y1) { super(g,x1,y1); x = x1; y = y1; drawSpoon(g); } public void drawSpoon(Graphics g) { g.setColor(Color.gray); g.fillOval(x+50,y+175,30,40); } } class Knife extends Utensil { private int x; private int y; public Knife(Graphics g, int x1,int y1) { super(g,x1,y1); x = x1; y = y1; drawKnife(g); } public void drawKnife(Graphics g) { g.setColor(Color.gray); g.fillArc(x+55,y+165,30,60,90,180); } } class Napkin { public Napkin (Graphics g, int x, int y) { g.setColor(Color.white); g.fillRect(x+50,y+170,60,100); g.setColor(Color.darkGray); g.drawLine(x+95,y+170,x+95,y+270); } } class MainDish { private int x; private int y; public MainDish(Graphics g, int x1, int y1) { x = x1; y = y1; g.setColor(Color.white); g.fillOval(x+155,y+215,150,50); g.setColor(Color.cyan); g.drawArc(x+175,y+225,110,30,170,210); } } class Burger extends MainDish { private int x; private int y; public Burger(Graphics g, int x1, int y1) { super(g,x1,y1); x = x1; y = y1; drawBun(g); drawBurger(g); } public void drawBun(Graphics g) { g.setColor(Color.orange); g.fillArc(x+180,y+180,100,70,0,180); g.fillRect(x+182,y+230,96,15); } public void drawBurger(Graphics g) { Color brown = new Color(150,75,0); g.setColor(brown); g.fillRect(x+185,y+215,90,15); } } class Cheeseburger extends Burger { private int x; private int y; public Cheeseburger(Graphics g, int x1, int y1) { super(g,x1,y1); x = x1; y = y1; drawCheese(g); } public void drawCheese(Graphics g) { g.setColor(Color.yellow); Polygon cheese = new Polygon(); cheese.addPoint(x+195,y+215); cheese.addPoint(x+265,y+215); cheese.addPoint(x+230,y+225); g.fillPolygon(cheese); } } class Hamburger extends Burger { private int x; private int y; public Hamburger(Graphics g, int x1, int y1) { super(g,x1,y1); x = x1; y = y1; drawSesameSeeds(g); drawLettuce(g); } public void drawSesameSeeds(Graphics g) { g.setColor(Color.yellow); g.fillOval(x+190,y+200,3,3); g.fillOval(x+200,y+190,3,3); g.fillOval(x+210,y+197,3,3); g.fillOval(x+220,y+207,3,3); g.fillOval(x+260,y+193,3,3); g.fillOval(x+230,y+185,3,3); g.fillOval(x+240,y+195,3,3); g.fillOval(x+253,y+200,3,3); g.fillOval(x+267,y+202,3,3); g.fillOval(x+220,y+193,3,3); } public void drawLettuce(Graphics g) { g.setColor(Color.green); Polygon lettuce = new Polygon(); lettuce.addPoint(x+185,y+215); lettuce.addPoint(x+275,y+215); lettuce.addPoint(x+285,y+225); lettuce.addPoint(x+275,y+220); lettuce.addPoint(x+265,y+225); lettuce.addPoint(x+255,y+220); lettuce.addPoint(x+245,y+225); lettuce.addPoint(x+235,y+220); lettuce.addPoint(x+225,y+225); lettuce.addPoint(x+215,y+220); lettuce.addPoint(x+205,y+225); lettuce.addPoint(x+195,y+220); lettuce.addPoint(x+185,y+225); lettuce.addPoint(x+175,y+220); g.fillPolygon(lettuce); } } class Drink { private int x; private int y; private Color drinkColor; public Drink(Graphics g, Color c1, int x1, int y1) { x = x1; y = y1; drinkColor = c1; drawCup(g); } public void drawCup(Graphics g) { Polygon cup = new Polygon(); cup.addPoint(x+305,y+190); cup.addPoint(x+365,y+190); cup.addPoint(x+370,y+80); cup.addPoint(x+300,y+80); g.setColor(drinkColor); g.fillPolygon(cup); } } class Soda extends Drink { private int x; private int y; private Color drinkColor; public Soda(Graphics g, Color c1, int x1, int y1) { super(g,c1,x1,y1); x = x1; y = y1; drinkColor = c1; drawTop(g); } public void drawTop(Graphics g) { g.setColor(Color.red); g.fillRect(x+335,y+25,7,45); g.fillRect(x+335,y+25,30,7); g.setColor(Color.white); g.fillRect(x+295,y+70,80,10); g.setColor(Color.black); g.drawRect(x+295,y+70,80,10); } } class CocaCola extends Soda { private int x; private int y; public CocaCola(Graphics g, int x1, int y1) { super(g,Color.red,x1,y1); x = x1; y = y1; drawCupDesign(g); } public void drawCupDesign(Graphics g) { g.setColor(Color.white); g.drawString("C",x+310,y+100); g.drawString("O",x+310,y+110); g.drawString("C",x+310,y+120); g.drawString("A",x+310,y+130); g.drawString(" ",x+310,y+140); g.drawString("C",x+310,y+150); g.drawString("O",x+310,y+160); g.drawString("L",x+310,y+170); g.drawString("A",x+310,y+180); g.drawOval(x+325,y+85,5,5); g.drawOval(x+335,y+100,3,3); g.fillArc(x+340,y+36,30,90,180,180); g.fillArc(x+340,y+125,27,130,0,180); g.setColor(Color.lightGray); g.drawArc(x+340,y+36,30,90,270,90); g.drawArc(x+340,y+125,27,130,95,85); g.drawArc(x+340,y+36,29,90,270,90); g.setColor(Color.red); g.fillArc(x+340,y+36,20,90,180,180); g.fillArc(x+350,y+125,17,130,0,180); } } class Sprite extends Soda { private int x; private int y; public Sprite(Graphics g, int x1, int y1) { super(g,Color.cyan,x1,y1); x = x1; y = y1; drawCupColor(g); drawCupDesign(g); } public void drawCupColor(Graphics g) { for (int blue = 170; blue <= 210; blue++) { g.setColor(new Color(0,100,blue)); g.drawLine(blue+260,81,blue+255,189); } for (int gr = 160; gr <= 200; gr++) { g.setColor(new Color(0,gr,0)); g.drawLine(gr+240,81,gr+245,189); } } public void drawCupDesign(Graphics g) { g.setColor(Color.green); g.fillArc(x+340,y+157,20,15,5,170); g.fillArc(x+340,y+155,20,15,-5,-170); g.setColor(Color.yellow); g.fillArc(x+336,y+150,20,15,5,170); g.fillArc(x+336,y+148,20,15,-5,-170); g.setColor(Color.white); g.drawString("S",x+315,y+160); g.drawString("p",x+322,y+150); g.drawString("r",x+329,y+140); g.drawString("i",x+336,y+130); g.drawString("t",x+343,y+120); g.drawString("e",x+350,y+110); } } class HotDog extends MainDish { private int x; private int y; public HotDog(Graphics g, int x1,int y1) { super(g,x1,y1); x = x1; y = y1; drawHotDog(g); } public void drawHotDog(Graphics g) { g.setColor(Color.orange); g.fillRect(x+180,y+220,20,20); g.fillRect(x+200,y+220,60,20); g.fillRect(x+260,y+220,20,20); g.fillArc(x+170,y+220,20,20,90,180); g.fillArc(x+270,y+220,20,20,270,180); g.fillArc(x+180,y+235,100,10,180,180); g.fillRect(x+180,y+230,20,20); g.fillRect(x+200,y+230,60,20); g.fillRect(x+260,y+230,20,20); g.fillArc(x+170,y+230,20,20,90,180); g.fillArc(x+270,y+230,20,20,270,180); g.fillArc(x+180,y+245,100,10,180,180); g.setColor(Color.red); g.fillArc(x+180,y+224,100,12,180,180); g.setColor(Color.white); g.fillArc(x+187,y+214,86,10,180,180); } } class Powerade extends Soda { private int x; private int y; public Powerade(Graphics g, int x1, int y1) { super(g,Color.blue,x1,y1); g.setColor(Color.black); g.drawString("POWERADE",x+301,y+120); g.setColor(Color.white); g.drawString("POWERADE",x+302,y+121); } } class Meal { private Utensil utensil; private Tray tray; private Fork fork; private Spoon spoon; private Knife knife; private Napkin napkin; private Hamburger plainBurger; private Cheeseburger wCheese; private Powerade bigK; private Sprite coke; private HotDog dog; public Meal(Graphics g, int x, int y) { tray = new Tray(g,x,y); napkin = new Napkin(g,x,y); fork = new Fork(g,x+20,y); spoon = new Spoon(g,x,y); knife = new Knife(g,x+50,y); dog = new HotDog(g,x,y); bigK = new Powerade(g,x,y); coke = new Sprite(g,x+100,y); } } It compiles; however, once I switch to the HTML window and try to run it, a screen appears and the status bar is giving me the "Start: applet not initialized error." Here's my HTML code: Code: <APPLET CODE = "Lab09GRFX04st.class" WIDTH=1000 HEIGHT=650> </APPLET> Does anyone know what's wrong? Here is the code I am working with, been at it for 3 days now. I am at a loss....cant see why it shouldnt work. window.onload = defineMarquee; var timeID; var marqueeTxt = new Array(); var marqueeOff = true; function defineMarquee(){ var topValue = 0; var allElems = document.getElementsByTagName("*"); for (var i=0; i < allElems.length; i++){ if (allElems[i].className =="marqueTxt") marqueeTxt.push(allElems[i]); } for (i = 0; i < marqueeTxt.length; i++) { if (marqueeTxt[i].getComputedStyle) { topValue = marqueeTxt[i].getPropertyValue("top"); } else if (marqueeTxt[i].currentStyle) { topValue = marqueeTxt[i].currentStyle("top"); } } document.getElementById("startMarquee").onclick = startMarquee; document.getElementById("stopMarquee").onclick = stopMarquee; } function startMarquee(){ if (marqueeOff == true) { timeID = setInterval("moveMarquee()", 50); marqueeOff = false; } } function stopMarquee(){ clearInterval(timeID); marqueeOff = true; } function moveMarquee(){ var topPos = 0; for (i=0; i < marqueeTxt.length; i++){ if (marqueeTxt[i].getComputedStyle) { topPos = parseInt(marqueeTxt[i].getPropertyValue("top")); } else if (marqueeTxt[i].currentStyle) { topPos = parseInt(marqueeTxt[i].currentStyle("top")); } if (topPos < -110) { topPos = 700; } else { topPos -= 1; } marqueeTxt[i].style.top = topPos + "px"; } } I am trying to change the background color of TD's that only the exact text PTO and really do not grasp regex's string/element examples: Code: <td class="ms-cal-todayitem"> Ward, Daniel M. - PTO - home - im awesome. </td> <td class="ms-cal-todayitem">Ward, Daniel M. - UPTO - home - im awesome. </td> I tried this: Code: $("td.ms-cal-todayitem").filter(function() { return /PTO/.test( $(this).text() ); }).css("background-color","#C4DBFF") but it also changes the background of items like my second element example. - Yes it should be case sensitive, if possible. I want to validate a form with only numbers and "$" sign. so far i know this Code: currencyValue = which.value; var re = /^[0-9]*$/; if (!re.test(currencyValue)) { alert("Value must be all numberic charcters, non numeric's removed from field!"); field.value = field.value.replace(/D/g,""); } but how do I also add the "$" sign as ok? Hello, How can i validate string with alphanumeric, space, dash and dot in regular expression ? Hi, Can someone fix the following regular expression? It is validating every thing expect YEAR. It only matches first 2 digits for year instead of 4. I want it to be 4 digits for a year. It returns true if I put 12/25/19.I want it to return false for the above date. Code: var RegExPattern = /^(?=\d)(?:(?:(?:(?:(?:0?[13578]|1[02])(\/|-|\.)31)\1|(?:(?:0?[1,3-9]|1[0-2])(\/|-|\.)(?:29|30)\2))(?:(?:1[6-9]|[2-9]\d)?\d{2})|(?:0?2(\/|-|\.)29\3(?:(?:(?:1[6-9]|[2-9]\d)?(?:0[48]|[2468][048]|[13579][26])|(?:(?:16|[2468][048]|[3579][26])00))))|(?:(?:0?[1-9])|(?:1[0-2]))(\/|-|\.)(?:0?[1-9]|1\d|2[0-8])\4(?:(?:1[6-9]|[2-9]\d)?\d{2}))($|\ (?=\d)))?(((0?[1-9]|1[012])(:[0-5]\d){0,2}(\ [AP]M))|([01]\d|2[0-3])(:[0-5]\d){1,2})?$/; Thanks I have the following regular expression to test the validity of an input date: Code: ([0-9][0-9]|[0-9])[\s/-]([0-9][0-9]|[0-9])[\s/-]([0-9][0-9][0-9][0-9]|[0-9][0-9]) It should allow 1 or two digits for the day of the month, then a separating character (" ", "/" or "-"), then 1 or two digits for the month, then 2 or 4 digits for the year. Unfortunately it will accept anything above 2 digits for the year, which I understand why is happening but don't know how to fix! Can anyone help? Thanks! can anyone explain me in detail what this regular expression mean... each and every part of this sentence: var baseRegex = new RegExp("^(?=.{6,})(?=.*^[A-Za-z]([a-zA-Z0-9_-]+)$)(?=.*[A-Z])"); I am trying to find the correct regular expression (or an alternate) for if a user enter any more than 1-3 digits in the age field of a form it produces an error message. I already have the error set up, just the correct coding to produce the 1-3 digit condition. Thanks, KWIKCUCUMBER. for the character classes [ ] , if i want to match ,.[] i cannot put them into the square brackets so how to deal with that? what if the characters are . or ! or ." (<-- combined) it fails if the regexp is [.!(.")] which will treat ( as one of the element. also the book javascript: the definitive guide says that (?=p) requires that the following characters match the pattern p, but do not include those characters in the match. However, the browser failed to figure this out (IE8) i.e. "asd:ert".match(/(?=\\w/) returns null thx in advance Hi all, I have this line (part of a larger function that converts a few common BBCodes into HTML) and I don't know how to do one thing. First, here's the line: Code: str.replace(/\[color=(.*?)\](.*?)\[\/color\]/gi,'<span style="color:$1;">$2</span>'); It works fine if I do this (I'll mis-spell "color" to prevent messing up the board): THIS works fine..... [colur=#ff0000]Red Text[/colur] But of course, if I do this: [colur="#ff0000"]Red Text[/colur] It doesn't work. What I need to do is take the $1 variable, AFTER it's captured, but BEFORE it's used, and strip out any quote marks I find. I may want to also strip out, then add the hash sign (#) also, then put it back so it works with or without the #. While I'm at it, I'll also probably detect color as a hex string vs. a keyword (so that both "#ff0000" and "red" work) and probably also support the rgb() method. But first I need to know how to access and modify $1 BEFORE it's used. I'm hoping that I don't need to use two lines (or two separate .replace() calls). Thanks! -- Roger Hi: I think this is where I need to ask this. I am doing a PHP/mod_rewrite and I need to tweak one of the RegEx's used in it but I don't know the syntax. I have this bit of code: Code: <a href="http://www.mywebsite.com/Promotional.Products-Promotional.Items/Promotional-Products/<?php echo $product_id ?>-<?php echo str_replace(" ", "-", $myTitle) ?>-<?php echo $full_state ?>-Promotional-Products.html" title="<?php echo $myTitle?> <?php echo "$full_state"; ?>"><?php echo $myTitle?></a> RewriteRule ^Promotional.Products-Promotional.Items/Promotional-Products/([0-9]+)-([a-zA-Z]+)-([a-zA-Z]+)-Promotional-Products.html$ Promotional.Products-Promotional.Items/Promotional-Products.php?product_id=$1&myTitle=$2&full_state=$3 I wanted to know how I can revise the middle RegEx: Code: ...-([a-zA-Z]+)-... to include replacing all spaces with hyphens. Can someone help me with this, please. Thanks! Dear experts I have following codes Var re=/(\d){4}-(\d){7}/; When I test this string 0300-685706263 It says TRUE But I validate this string exactly 0300-6857062 Please help I want to find in all occurrences of #(...) in a string (what is between the parentheses is unknown. At the moment I have Code: str.match(/#\(.*\)/) The problem is, I want to be able to have multiple of these in one string, like "#(hello) good #(world)", but RegExp takes me from the first '#', to the last ')'. I want to allow nested parentheses, so I am thinking that there should be away to not let it look past the second '#'. How would I do this? Hi i am using this form to validate my input Code: function validateForm() { var name = document.getElementById("name"); var descp = document.getElementById("descp"); var language = document.getElementById("language"); var txtFileName = document.getElementById("txtFileName"); var alphaNumExp = /^[a-zA-Z0-9 _-]+$/; var isValid = true; if ((name.value === "" || name.value.length < 1 || name.value.length > 30) && !name.value.match(alphaNumExp)) { isValid = false; } if ((descp.value === "" || descp.value.length < 1 || descp.value.length > 1000) && !descp.value.match(alphaNumExp)) { isValid = false; } if (language.value === "") { isValid = false; } if (txtFileName.value === "") { isValid = false; } document.getElementById("btnSubmit").disabled = !isValid; } for a form. It checks everything else correctly EXCEPT for the alpha numeric part. Any ideas?? I am new to JS writing on my own(just was using other's scripts) I have a function that changes the label on a set of labels with similar "for" fields. Somehow, the matching is only matching every other label. I suspect I must be missing something obvious. The goal is to change the text of a set of radio buttons to either "top" and "bottom" or "left" and "right" depending on orientation. Code: function ChangeLabels(orientation) { var lefttop = "Left"; var bottomright = "Right"; var lbls = document.getElementsByTagName("label"); var lefttopregex = new RegExp ("Field6_[0-9]+", "gi"); var bottomrightregex = new RegExp ("Field20_","gi"); if (orientation == "Vertical") { lefttop = "Top"; bottomright = "Bottom"; } var forvalue = ""; for (var i=0,k=lbls.length; i<k; i++) { forvalue = lbls[i].htmlFor; if (lefttopregex.test(forvalue)) { lbls[i].innerHTML = lefttop; } if (bottomrightregex.test(forvalue)) { lbls[i].innerHTML = bottomright; } } } And here is the HTML of the labels. Code: <li id="fo1li6" class=" "> <label class="desc" id="title6" for="Field6_0"> Left/Top <span id="req_6" class="req">*</span> </label> <div> <input id="radioDefault_6" name="Field6" type="hidden" value="" /> <span> <input id="Field6_0" name="Field6" type="radio" class="field radio" value="Dogs" tabindex="20" onchange="handleInput(this);" checked="checked" /> <label class="choice" for="Field6_0" > Dogs</label> </span> <span> <input id="Field6_1" name="Field6" type="radio" class="field radio" value="Pineapple" tabindex="21" onchange="handleInput(this);" /> <label class="choice" for="Field6_1" > Pineapple</label> </span> <span> <input id="Field6_2" name="Field6" type="radio" class="field radio" value="Leaves" tabindex="22" onchange="handleInput(this);" /> <label class="choice" for="Field6_2" > Leaves</label> </span> <span> <input id="Field6_3" name="Field6" type="radio" class="field radio" value="Cat" tabindex="23" onchange="handleInput(this);" /> <label class="choice" for="Field6_3" > Cat</label> </span> <span> <input id="Field6_4" name="Field6" type="radio" class="field radio" value="Star" tabindex="24" onchange="handleInput(this);" /> <label class="choice" for="Field6_4" > Star</label> </span> <span> <input id="Field6_5" name="Field6" type="radio" class="field radio" value="Bamboo & Sun" tabindex="25" onchange="handleInput(this);" /> <label class="choice" for="Field6_5" > Bamboo & Sun</label> </span> <span> <input id="Field6_6" name="Field6" type="radio" class="field radio" value="Bamboo" tabindex="26" onchange="handleInput(this);" /> <label class="choice" for="Field6_6" > Bamboo</label> </span> <span> <input id="Field6_7" name="Field6" type="radio" class="field radio" value="Sun & Moon" tabindex="27" onchange="handleInput(this);" /> <label class="choice" for="Field6_7" > Sun & Moon</label> </span> <span> <input id="Field6_8" name="Field6" type="radio" class="field radio" value="Fleur de lis" tabindex="28" onchange="handleInput(this);" /> <label class="choice" for="Field6_8" > Fleur de lis</label> </span> <span> <input id="Field6_9" name="Field6" type="radio" class="field radio" value="Dragonflies" tabindex="29" onchange="handleInput(this);" /> <label class="choice" for="Field6_9" > Dragonflies</label> </span> <span> <input id="Field6_10" name="Field6" type="radio" class="field radio" value="No Design" tabindex="30" onchange="handleInput(this);" /> <label class="choice" for="Field6_10" > No Design</label> </span> </div> </li> Im sorry im tired and cant think how to put this. how do i make \\1 and \\2 = margin-bottom[^;]+); and margin-top[^;]+); Sorry again, Regards. Code: var regep = /margin-bottom:([^;]+); margin-left:0px; margin-right:0px; margin-top:([^;]+);/; elementCSS = elementCSS.replace( regep , "margin-bottom:\\1; margin-left:auto; margin-right:auto; margin-top:\\2;"); I have the following function: Code: function sonKare(sayac, oteki) { var vertical, horizontal = hangiYataySira(sayac, oteki), j, k, l, m, united, tekRakam, actualV = [], actualH = [], numaralar = [1, 2, 3, 4, 5, 6, 7, 8, 9], olmayanlar = []; if(ilkSefer === true) { vertical = hangiDikeySira(rakamlar.length); ilkSefer = false; } else { vertical = hangiDikeySira(rakamlar.length - 1); } for(j = 0; j <= vertical.length - 1; j ++ ) { if(rakamlar[vertical[j]] !== undefined) actualV.push(rakamlar[vertical[j]]); } for(k = 0; k <= horizontal.length - 1; k ++ ) { if(rakamlar[horizontal[k]] !== undefined) actualH.push(rakamlar[horizontal[k]]); } united = actualV.concat(actualH); //---- Olmayan rakamları bulan kısım ------------ outer: for(l = 0; l <= numaralar.length - 1; l++) { for(m = 0; m <= united.length - 1; m++) { if(numaralar[l] === united[m]) continue outer; if(m === united.length - 1 && numaralar[l] !== united[m]) olmayanlar.push(numaralar[l]); } } //---------------------------------------------- if(olmayanlar.length > 1 || olmayanlar.length === 0) { rakamlar = []; document.form1.buton.click(); // THIS LINE DOES NOT WORK SECOND TIME } else { $("_" + oteki + "_" + sayac).value = olmayanlar[0]; rakamlar.push(olmayanlar[0]); sayac++; if(sayac === 10) return; else sonKare(sayac, oteki); //CALLS ITSELF } } This is a recursive function. As stated above there is a line which does not work for the second time. What I mean is, it works perfect for the first time and after function calls itself, it doesn't work. Javascript does execute the line above it but just disregards that document.form1.buton.click(); line. I use Firebug for debugging and I checked it many times, when that expression needs to be executed for the second time, JavaScript just ignores it and immediately goes at the end of the function... I just can't figure out why JS does such a thing? p.s: Don't bother about weird variable names, they are not in English but in Turkish which is my native language |