Search Results

Search found 8983 results on 360 pages for 'active attr'.

Page 145/360 | < Previous Page | 141 142 143 144 145 146 147 148 149 150 151 152  | Next Page >

  • problem with jquery for add cart button

    - by jessy
    hi i have a problem with displaying amount.i have the page called make payment in this page i made three radio buttons, if i click the button that amount must add with addcart like a product. <form id='theForm'> <input type="hidden" name="totalamount" id="totalamount" value="1" /> input type="radio" name="rmr" id="payment1" value="3" onclick="updatepayment(this.value)" / input type="radio" name="rmr" id="payment2" value="5.5" onclick="updatepayment(this.value)"/ input type="radio" name="rmr" id="payment4" value="10" onclick="updatepayment(this.value)"/ div id="finalamount" /div i think that problem is my js script. if i click that button there is no response. how do i solve that problem you guys can give me any idea $(document).ready(function() { $(".cart :radio[name='rmr']").add(".cart :radio[name='rmr']").each(function() { $(this).click(function() { $(".cart :radio[name='rmr']").add(".cart :radio[name='rmr']").each(function() { $(this).attr("checked", false); }); $(this).attr("checked", true); }); }); }) function updatePayment(val) { $("").html("updatePayment(" + val + ")").appendTo(document.body); } thanks.have a nice day

    Read the article

  • jquery select this parent from inside image.

    - by michael
    I have the following code, i'm trying to make a loader appear then the image fade in once it is loaded. I want to make the function reusable so i can just add an image to a div with the loader id and it will work. I cant figure out how to select the parent loader div from inside the image. the commented line works fine but, i think that will select all divs. i just want to select the parent loader div. can anyone help, thanks. <div id="loader" class="loading"> <img src="http://www.inhousedesign.co.nz/images10/caravan_01.jpg" style="display: none;"/> </div> $("#loader").each(function(){ var source = $(this).find("img").attr('src'); var img = new Image(); $(img).load(function(){ $(this).hide(); //$("#loader").removeClass('loading').append(this); $(this).parents("div:first").removeClass('loading').append(this); $(this).fadeIn(800); }).attr('src', source); });

    Read the article

  • select (or click) specific radiobutton using jQuery

    - by Oleg Babanov
    I am trying to make specific radiobutton checked on page load and tried a lot of ways, but no one worked for me. This is a part of orderform on my webstore. <input type="radio" name="sPaymentCarrier" id="pC_2-1" value="1;2;0.00" onclick="countCarrierPrice( this )" /> <label for="pC_2-1">0</label> Actually this radiobutton is the only on radiobutton on page, and it must be checked to let user make order. I tried $(function() { var $radios = $('input:radio[name=sPaymentCarrier]'); if($radios.is(':checked') === false) { $radios.filter('[value=1;2;0.00]').attr('checked', true); } }); and $('input:radio[name="sPaymentCarrier"]').filter('[value="1;2;0.00"]').attr('checked', true); but none of these ways worked. Also I tried a lot of other codes, but when I refreshed page I still saw this button unchecked. I guess maybe I have to set up jquery click on this button instead of select, but actually I cannot make this work. Any help is appreciated!

    Read the article

  • How to specify hash algorithm when updating LDAP via Java?

    - by JuanZe
    Is there a way to specify the hash algorithm (MD5, SHA1, etc.) to use for storing the passwords when you update an Open LDAP directory using Java APIs with code like this: private void resetPassword(String principal, String newPassword) throws NamingException { InitialDirContext ctxAdmin = null; Hashtable<String, String> ctxData = new Hashtable<String, String>(); ctxData.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory"); ctxData.put(Context.PROVIDER_URL, "ldap://myserver:389"); ctxData.put(Context.SECURITY_AUTHENTICATION, "simple"); ctxData.put(Context.SECURITY_PRINCIPAL, "admin_dn"); ctxData.put(Context.SECURITY_CREDENTIALS, "admin_passwd"); InitialDirContext ctxAdmin = new InitialDirContext(ctxData); if (newPassword == null || newPassword.equals("")) { String msg = "Password can't be null"; throw new NamingException(msg); } else { if (principal == null || principal.equals("")) { String msg = "Principal can't be null"; throw new NamingException(msg); } else { if (ctxAdmin == null) { String errCtx = "Can't get LDAP context"; throw new NamingException(errCtx); } } } BasicAttribute attr = new BasicAttribute("userpassword", newPassword); ModificationItem modItem = new ModificationItem(DirContext.REPLACE_ATTRIBUTE, attr); ModificationItem[] items = new ModificationItem[1]; items[0] = modItem; ctxAdmin.modifyAttributes("cn=" + principal + ",ou=Users,dc=com", items); }

    Read the article

  • Create a function to a function that runs a for loop?

    - by user637364
    Hi, I have made some code that creates a red border around an image when the user click on to highlite thats the choesen one. But I want to erase previous or all border with a white border around all images before a new click is made on another image. My question is how do I activate a call to a function when a click is made and how would a function look in jQuery? I just whant to use the .css to change the border in perhaps a loop and change the id of the images? Can I mix common javascript with jQuery, or should it only be pure jQuery code in a script? This is a simplified part of the code, it contains "minibild_1" to "minibild_5" $(document).ready(function(){ $("#minibild_1").click(function(){ $("#minibild_1").css({"border":"2px solid #D00C33"}); $("#storbild").attr("src","../bilder/bilder_stora/{$row1-bild_1}.jpg"); }); $("#minibild_2").click(function(){ $("#minibild_2").css({"border":"2px solid #D00C33"}); $("#storbild").attr("src","../bilder/bilder_stora/{$row1-bild_2}.jpg"); }); });

    Read the article

  • If Statements Skipping or Evaluating Strangely, JavaScript and jquery

    - by tlm2021
    So in jQuery, I have a global variable "currentSubNav" that stores a current visible element. The following code executes on "mouseenter". I need it to get store element's ID, check to see if there was one. If there wasn't, set the new visible element to the default. $('#mainMenu a').mouseenter(function() { var newName = $(this).attr("id"); if(newName == ''){ var newName = "default"; } Then it checks to see if the new element matches the current one. If so, it returns. If not, it performs the animations to bring in the new one. if(newName == currentSubNav){ return; }else{ $("div[name=" + currentSubNav + "]").animate({"left": "+=600px", "opacity": "toggle"}, "slow"); $("div[name=" + newName + "]").css({"margin-top": "0"}); $("div[name=" + newName + "]").fadeIn(2000); $("div[name=" + currentSubNav + "]").animate({"left": "-=600px"}, 0); currentSubNav = newName; return; } }); I'm using Chrome at the moment, and according to the dev tools that isn't what happens. Problem #1 "$(this).attr("id");" isn't returning undefined as the documentation claims. It seems to be returning "". BUT, when I have the if statement as I do above, it skips over the statement entirely. I set a breakpoint, but it never pauses execuation, so the statement is never evaluated. Problem #2 After the animations occur, instead of using the return at the end of the statements it goes back and uses the return for the "newName == currentSubNav" if statement. I guess that not a big deal, but it's not the intended behavior. I'm fairly new to JavaScript, and it appears I'm missing something about how JavaScript works. But I can't find what anywhere. Any help? Blockquote

    Read the article

  • jQuery .die isnt killing an attached event?

    - by adam
    Hi I've just started experimenting with .live and .die and having some great results but one thing isn't working. I've been tinkering with firebugs console to try out my written code live to see if i can figure out the reason why .die isn't killing off an attached event. First if i do this //attach ajax submission $('a[href$=edit]').live("click", function(event) { $.get($(this).attr("href"), null, null); return false; }); Then as expected when I click on a link the ajax fires off and my server side code injects a form for inline editing. But sometimes I want to disable this behaviour and also make the link unclickable so I do the following //unbind ajax form creation when we click on a link, then disable its semantic behaviour $('a[href$=edit]').die("click").click( function(){ return false; } ); which works but if then try to remove this and restore that ajax goodness with the code below it doesn't work, Instead the link remains unclickable. I cant figure out why? Can anyone help? //remove any previous events from the links $('a[href$=edit]').die(); //attach ajax submission $('a[href$=edit]').live("click", function(event) { $.get($(this).attr("href"), null, null); return false; });

    Read the article

  • Has anyone used ever Mangoslick from themeforest?

    - by bonesnatch
    I was assigned to integrate MangoSlick theme to our current admin panel, Its a jQuery, Slick(?) and Responsive template. First, let me explain how the API goes In the documentation, it only says this is the only way data-[options]=[value] Example: If I wanna make a progress bar I can use this format <div class="progress"> <div class="bar" data-title="[title]" data-value="[value]" data-max="[max]" data-format="[format string]"></div> </div> so filling-in values <div class="progress"> <div class="bar" data-title="Space" data-value="1285" data-max="5120" data-format="0,0 MB"></div> </div> I will have this as output Now, the main question is when I use jQuery attr() to change the attribute values for data-title, data-max, data-value and data-format. Why is it not working? <script> var jq = $.noConflict(); jq(document).ready(function(){ jq('#bokz').attr("data-title", "No Space"); }); </script> Using the script above and inspect element in chrome the values are changed but not in the progressbar Some of you may have some ideas on this? Any help/suggestion would be very much appreciated.

    Read the article

  • Add in integer to returned value with jQuery

    - by danferth
    I have a page with a div id="videoFrame" that holds the video tag. The videos have variable heights so I have a function to grab the height value and plug it into the css of the div id="videoFrame like so: var videoHeight = $('video').attr('height'); $('#videoFrame').css('height',videoHeight+'px'); This works great. But here's the part driving me crazy. I have a p tag with disclaimers at the bottom of the div id="videoFrame". So I would like to add an additional 26px to the returned height. I tried: var videoHeight = $('video').attr('height'); var frameHeight = videoHeight + 26; $('#videoFrame').css('height',frameHeight+'px'); But as you would expect it is adding 26 to the end of the returned value. i.e. if returned value is 337 output for var frameHeight is 33726. I can not for the life of me figure out how to do this. Thanks in advance for any help

    Read the article

  • Issues with simple jQuery image gallery with Colorbox plugin

    - by Chris
    I'm putting together an image gallery for an ecommerce site and wanting to use colorbox to launch larger images. My problem is that image launched in colorbox stays as the first one launched and should reflect the image shown as img#bigpic - the link to the image does appear to be updating correctly. Here's the jQuery I have: $(document).ready(function(){ $("#largeimage").colorbox(); imageSwapper(".thumbnails a"); function imageSwapper(link) { $(link).click(function(){ $("#bigpic").attr("src", this.href); $("#largeimage").attr("href", this.rel); return false; }); }; $("#largeimage").bind('mouseenter mouseleave', function(event) { $("#largeimage span").toggleClass('showspan'); }); }); ...and the HTML <a href="_images/products/large/bpn0001_1.jpg" id="largeimage"><span></span><img src="_images/products/bpn0001_1.jpg" id="bigpic" /></a> <div class="thumbnails"> <ul> <li><a href="_images/products/bpn0001_1.jpg" rel="_images/products/large/bpn0001_1.jpg"><img src="_images/products/mini/bpn0001_1.jpg" /></a></li> <li><a href="_images/products/bpn0001_2.jpg" rel="_images/products/large/bpn0001_2.jpg"><img src="_images/products/mini/bpn0001_2.jpg" /></a></li> <li><a href="_images/products/bpn0001_3.jpg" rel="_images/products/large/bpn0001_3.jpg"><img src="_images/products/mini/bpn0001_3.jpg" /></a></li> </ul> </div> Any help would be much appreciated!

    Read the article

  • Cannot access objects in associative arrays using jQuery

    - by Sixfoot Studio
    I am trying to create and array of objects so that I can access them in a for loop in jQuery and I know that this works in Actionscript so what I am trying to do is convert my current knowledge to jQuery that will work. Please have a look at this and tell me why I cannot access divToShow Thanks guys var homeImages = new Array(); homeImages[0] = { hoverImage: ".leftColImage1", divToShow: ".image1", rollOverImg: "img-family-over.jpg" }; homeImages[1] = { hoverImage: ".leftColImage2", divToShow: ".image2", rollOverImg: "img-students-over.jpg" }; homeImages[2] = { hoverImage: ".leftColImage3", divToShow: ".image3", rollOverImg: "img-pros-over.jpg" }; homeImages[3] = { hoverImage: ".leftColImage4", divToShow: ".image4", rollOverImg: "img-retired-over.jpg" }; var hoverImage; var activeDiv; var mainContent = ".mainContent"; for (k = 0; k < homeImages.length; k++) { homeImages[k].id = k; $(homeImages[k].hoverImage).mouseover(function() { //alert("divToShow : " + homeImages[this.id].divToShow); alert("this : " + this.id); activeDiv = homeImages[k].divToShow; $(".leftColImage1 img").attr("src", "/App_Themes/MyChoice2010/Images/" + homeImages[k].rollOverImg); $(mainContent).hide(); $(homeImages[k].divToShow).slideDown("slow"); }).mouseout(function() { $(".leftColImage1 img").attr("src", "/App_Themes/MyChoice2010/Images/img-family.jpg"); $(".image1").hide(); $(mainContent).slideDown("slow"); }); }

    Read the article

  • how can i replace an image (inside a div) through jquery and ajax.

    - by oo
    I am trying to click on an image and change it to another image through jquery. When i step through the below code, on the serverside, the controller action fires and on the client side, i can see the correct html return in firebug watch window but the image doesn't change at all. any idea why this div is not updating? original div: <div class="inlineDiv" toggle="off" id="22"><img src="../../images/vote-favorite-off1.png" border="0"></div> jquery code: $(document).ready(function() { $('div.inlineDiv').live('click', function() { var id = $(this).attr("id"); var toggle = $(this).attr("toggle"); var url = '/Tracker/Update?id=' + id + '&toggle=' + toggle; $.get(url, function(data) { $(this).html(data); }); }); }); controller action: public ActionResult Update(int id, string toggle) { if (toggle == "off") { return Content("<img src='../../images/vote-favorite-on1.png' border=0'>"); } return Content("<img src='../../images/vote-favorite-off1.png' border=0'>"); }

    Read the article

  • Post JSON array to mvc controller

    - by Yustme
    I'm trying to post a JSON array to a mvc controller. But no matter what i try, everything is 0 or null. I have this table that contains textboxes. I need from all those textboxes it's ID and value as an object. This is my java code: $(document).ready(function () { $('#submitTest').click(function (e) { var $form = $('form'); var trans = new Array(); var parameters = { TransIDs: $("#TransID").val(), ItemIDs: $("#ItemID").val(), TypeIDs: $("#TypeID").val(), }; trans.push(parameters); if ($form.valid()) { $.ajax( { url: $form.attr('action'), type: $form.attr('method'), data: JSON.stringify(parameters), dataType: "json", contentType: "application/json; charset=utf-8", success: function (result) { $('#result').text(result.redirectTo) if (result.Success == true) { return fase; } else { $('#Error').html(result.Html); } }, error: function (request) { alert(request.statusText) } }); } e.preventDefault(); return false; }); }); This is my view code: <table> <tr> <th>trans</th> <th>Item</th> <th>Type</th> </tr> @foreach (var t in Model.Types.ToList()) { { <tr> <td> <input type="hidden" value="@t.TransID" id="TransID" /> <input type="hidden" value="@t.ItemID" id="ItemID" /> <input type="hidden" value="@t.TypeID" id="TypeID" /> </td> </tr> } } </table> This is the controller im trying to receive the data to: [HttpPost] public ActionResult Update(CustomTypeModel ctm) { return RedirectToAction("Index"); } What am i doing wrong?

    Read the article

  • Letting user carry on after three attempts

    - by sMilbz
    In my spelling game there is a grid that is populated with words. The words are hidden and the aim of the game is to spell the word that is highlighted with the aid of a sound and a picture. To highlight a word you press the "next" button. At the moment if you spell the word correctly it says "well done" and you can advance to the next word, but if you spell it incorrectly you have to keep attempting the word until it is complete. As the game is designed for children I do not think this is the best approach, so I would like to make it so you can advance after 3 incorrect attempts. I have played around with the script so much trying to put counters on incorrect attempts and then making the button active but cannot seem to get it to work. Can someone please help me? Here is the script for the button var noExist = $('td[data-word=' + listOfWords[rndWord].name + ']').hasClass('wordglow2'); if (noExist) { $('.minibutton').click(); } else { $('.minibutton').click('disable'); $("#mysoundclip").attr('src', listOfWords[rndWord].audio); audio.play(); $("#mypic").attr('src', listOfWords[rndWord].pic); pic.show(); } }); "wordglow2" is the style applied if the word is spelt correctly. Here is a fiddle to help understand... http://jsfiddle.net/smilburn/ZAfVZ/4/

    Read the article

  • Jquery - removing an image before the client browser attempts to download it

    - by ajbrun
    Hi there, I wonder if anyone could help me with a problem I've been having. I have a number of large images available, but due to space limitations, I can't create multiple copies of these at various sizes. I have used PHP GD functions to resize the images to the sizes I need and output them to the browser. This works, but obviously takes some processing time, which therefore impacts pages load times. I'm fine with this, but I only want to show the image once it's fully loaded, and have a loading gif in its place until that time. I'm using jquery to do this. The problem I'm having is making the page functional whether the client has javascript enabled or not. If JS is not enabled, I want standard img tags to be outputted, otherwise the images are removed and replaced with a loading gif until they have been fully loaded. The link below shows a simple non-javascript unfriendly example of a what I want to do (try turning JS off): http://jqueryfordesigners.com/demo/image-load-demo.php I've been testing the basics using the code below. The attr() function will be replaced with something like remove(). This is just a test to make something happen to the image before the browser tries to load it. $(document).ready(function() { $( "#Thumbnails .thumbnail img" ).attr('src', '#'); }); In IE, this works correctly - the image source is replaced with "#" BEFORE the client browser gets a chance to start downloading the image. In firefox however, it downloads the image, and THEN changes the source. It seems to me that firefox is loading the jquery onready event later than it should. As far as I know, this should be executed before the standard onload event and before anything has started loading. If it helps, I'm testing it with a good number of images on screen (81). Am I doing something wrong?

    Read the article

  • How to fetch the value of selected checkbox inside a checkboxList?

    - by Starx
    I want to know the selected value of the markup below. So that I can disabled a textbox, if one of the checkbox is selected. <asp:CheckBoxList ID="ChkTest" runat="server" RepeatDirection="Horizontal" CssClass="toggleYesNo"> <asp:ListItem Value="1">Yes</asp:ListItem> <asp:ListItem Value="0">No</asp:ListItem> </asp:CheckBoxList> I tried using this function it doesnot seem to work $(document).ready(function() { $("#<%=ChkTest.ClientID %>").click(function() { value = $(this).val(); if(value=='1') { $('#atextbox').attr('disabled',''); } else { $('#atextbox').attr('disabled','disabled'); } }); }); I also track the output HTML but the id the CheckBoxList the assigned to a table instead. UPDATED <table id="ChkTest" class="toggleYesNo" border="0"> <tr> <td><input id="ChkTest_0" type="checkbox" name="ChkTest$0" /><label for="ChkTest_0">Yes</label></td><td><input id="ChkTest_1" type="checkbox" name="ChkTest$1" /><label for="ChkTest_1">No</label></td> </tr> </table>

    Read the article

  • Issue with changing an attribute with jquery

    - by rshivers
    Hello, I'm having an issue with changing the attribute for an id and can't seem to figure out what I'm doing wrong. I guess it doesn't help that I'm new to this also. I have a function that tests to make sure that I am pulling the correct id from the row in my form that I have dynamically created. It goes something like this: myFunction() { var id = $(id).attr("id"); alert("This is my id " + id); } This works with no problem and when I click the button assigned to alert me of my id it will give give me the id of the dynamic row in my form. The issue is now when I try to change the id with this: changeId() { var newId = $(id).attr("id", "x"); alert("This is my new id " + newId); } What happens in this case is that it will alert saying "This is my new id [object Object]" instead of giving me the new id. Any suggestions? I'd really appreciate any help with this.

    Read the article

  • How to add ease to this, with jQuery Easing plugin.

    - by user1691441
    I've asked this question previously before, and had a bit of help, but my lack of jQuery skills still didn't accomplish the job. I was wondering if anyone else could help me out with this. I've tried adding easing: "easeIn" right after the duration section, but still didn't work for me. if anyone could help me out that would be wonderful. I'm using the jquery easing plugin $(function() { function scroll(direction) { var scroll, i, positions = [], here = $(window).scrollTop(), collection = $('.part'); collection.each(function() { positions.push(parseInt($(this).offset()['top'],10)); }); for(i = 0; i < positions.length; i++) { if (direction == 'next' && positions[i] > here) { scroll = collection.get(i); break; } if (direction == 'prev' && i > 0 && positions[i] >= here) { scroll = collection.get(i-1); break; } } if (scroll) { $.scrollTo(scroll, { duration: 350 }); } return false; } $("#next,#prev").click(function() { return scroll($(this).attr('id')); }); $(".scrolltoanchor").click(function() { $.scrollTo($($(this).attr("href")), { duration: 350 }); return false; }); });

    Read the article

  • Handle submission of forms created dynamically having same class

    - by user1504383
    i am creating a form for users to comment on each posts displayed through a loop and the form for commenting is also in the same loop. Now i want each comment to be submitted via jquery ajax but each time its taking into account only the first form . Here is my code:- while($row=mysql_fetch_array($result)) { ?> <?=$row['title']?> <h4>Add commment </h4> <form class="add_comment" method="post"> <div style="display:none;"><input type="text" name="id" class="id" value="<?=$row['id']?>"/></div> <input type="text" name="comment" class="comment"/> <input type="submit" name="submit" value="add" class="submit"/> </form> <?php } ?> And my jquery goes here $("form.add_comment").submit(function(event) { event.preventDefault(); var comment =$('.comment').attr('value'); var id =$('.id').attr('value'); $.ajax({ type: "POST", url: "/add_comment", data: "comment="+comment+"&id="+id, success: function() { location.reload(); } }); return false; });`enter code here` i understood the error that it selects the first one by default but couldnt fix it up plz help me

    Read the article

  • need help with jquery selector

    - by Gandalf StormCrow
    I have a following HTML : <ul class="someclass"> <li id="1"> <button type="button" class="grey"></button> </li> <li id="2"> <button type="button" class="grey"></button> </li> <li id="44"> <button type="button" class="grey"></button> </li> <li id="54"> <button type="button" class="grey"></button> </li> </ul> Now here is what I'm trying to accomplish with jquery : When button is clicked to find out id of parent li, here is how I tried and failed: $(".grey").live('click', function(){ alert($(this).parents("li").attr("id")); alert($(this).parents("li:first").attr("id")); }); Both give me null alerted, how can I do this ?

    Read the article

  • Get last clicked item id

    - by Peeter Kõbu
    I have function like this: $(document).ready(function () { $("*").click(function () { alert($(this).attr('id').toString()); }); }); And on Page i have something like this: <asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent"> <script language="javascript" src="Scripts/jquery-1.4.1.js" type="text/javascript"></script> <div id="div1">Some stuff <div id="div2">Some other stuff <asp:Button ID="Button1" runat="server" Text="Button" /> <div id="div3">More stuff <asp:Button ID="Button2" runat="server" Text="Button" /> </div> </div> </div> If i click something it works fine, but it alerts me three times(or more). For example: I click button2. Alertbox appears with button2.id, then with div3.id, div2.id etc. It shows me all id's under that button. If i try to store this id to variable like this: var storedId = $(this).attr('id').toString(); it stores the last one.That means i get the id of form1. How can i get the first id? The id of clicked button or clicked label or whatever i have on my page.

    Read the article

  • Resize Flash player problem on Internet Explorer

    - by raskolnikov
    When i want to make my flasplayer( flowplayer ) resize to bigger or smaller with jquery , it does not work properly on internet explorer when i make it smaller i use this function ////Make player smaller function createSmallPlayer() { flowplayer("player").hide().pause(); // get handle to the embed element $("#player").css({ // size width:160*1.4, height:90*1.4, top :350, left : 0 }) var embed = $("#player :first"); embed.css({ // size width:160*1.4 , height:90*1.4, top :350, left : 4 }); flowplayer("player").resume(); } and it works well on the internet explorer but when i want to make its size previous style i use //Make player bigger function createBigPlayer() { flowplayer("player").hide().pause(); $("#player").css({ // size width :screen_width , height:screen_height, top :35, left : 0 }); // get handle to the embed element var embed = $("#player :first"); embed.attr("width","100%") ; embed.attr("height","100%") ; embed.removeAttr("style") ; flowplayer("player").resume(); } this function does'nt work on IE properly , it can't be resize, how ever after run this function when i click or resize IE window it works properly . I don't understand the problem .Sorry about my English :)

    Read the article

  • Cleaner method for list comprehension clean-up

    - by Dan McGrath
    This relates to my previous question: Converting from nested lists to a delimited string I have an external service that sends data to us in a delimited string format. It is lists of items, up to 3 levels deep. Level 1 is delimited by '|'. Level 2 is delimited by ';' and level 3 is delimited by ','. Each level or element can have 0 or more items. An simplified example is: a,b;c,d|e||f,g|h;; We have a function that converts this to nested lists which is how it is manipulated in Python. def dyn_to_lists(dyn): return [[[c for c in b.split(',')] for b in a.split(';')] for a in dyn.split('|')] For the example above, this function results in the following: >>> dyn = "a,b;c,d|e||f,g|h;;" >>> print (dyn_to_lists(dyn)) [[['a', 'b'], ['c', 'd']], [['e']], [['']], [['f', 'g']], [['h'], [''], ['']]] For lists, at any level, with only one item, we want it as a scalar rather than a 1 item list. For lists that are empty, we want them as just an empty string. I've came up with this function, which does work: def dyn_to_min_lists(dyn): def compress(x): return "" if len(x) == 0 else x if len(x) != 1 else x[0] return compress([compress([compress([item for item in mv.split(',')]) for mv in attr.split(';')]) for attr in dyn.split('|')]) Using this function and using the example above, it returns: [[['a', 'b'], ['c', 'd']], 'e', '', ['f', 'g'], ['h', '', '']] Being new to Python, I'm not confident this is the best way to do it. Are there any cleaner ways to handle this? This will potentially have large amounts of data passing through it, are there any more efficient/scalable ways to achieve this?

    Read the article

  • Problem with running totals in jquery

    - by rshivers
    I'm having an issue trying to get an accurate running total for my calculations. When you enter numbers into the input field I get an accurate total for that line item, but the grand total comes out to a higher number. Note that this is a dynamic form and that the id's will change depending on how many form fields I have added to the form. Also, I have it set to make the calculations onKeyUp for each input field instead of a calculate button. The code that calculates a single item is this: function calcLineItem(id) { var id = $(id).attr("id"); var Item1 = $("#Item1" + id).val(); var Item2 = $("#Item2" + id).val(); var Item3 = $("#Item3" + id).val(); function calcTotal(Item1, Item2, Item3){ var total; total = Math.round((Item1 * Item2) * Item3); return total; } $("#total" + id).text(calcTotal(Item1, Item2, Item3)); calcAllFields(); } This will give me the total of this particular input field. The function at the end, calcAllFields(), is supposed to do the calculations for all items in my form to give me the grand total of all input fields: function calcAllFields(id) { var id = $(id).attr("id"); $('#target1').text($("#total" + id).map(function() { var currentValue = parseFloat(document.getElementById("currentTotal").value); var newValue = parseFloat($("#total" + id).text()); var newTotal = currentValue + newValue; document.getElementById("currentTotal").value = newTotal; return newTotal; }).get().join()); } The variable currentTotal is getting its value from a hidden field on my form: <input type="hidden" id="currentTotal" value="0"> As I enter numbers a field the calculation for that line will be accurate, but the grand total will be inaccurate because the value for currentTotal will continue to increment with every key stroke I make in the input field. Any ideas on how to avoid this from happening?

    Read the article

  • jQuery Code Only Fires On Hard Refresh?

    - by Rob Vanders
    The XFBML version of the Facebook Registration plugin only loads HTTPS. I need it to load HTTP so my form does not call a security error mismatch between domains. I wrote this code to get the SRC and rewrite it with out HTTPS It works fine on the first load, however on Chrome and Safari it only loads the first time and on HARD refreshes. It does not load on standard reloads or by pressing "enter" on the address bar. Here is the code $(window).load(function () { // Replace HTTPS with HTTP when frame has loaded $(".subscribe iframe").each(function(){ var source = $(this).attr("src"); //alert(source); var sourceNew = source.replace("https", "http"); // change https to http alert(sourceNew); $(this).attr("src", sourceNew); }); }); I have .HTACCESS set to disable server cache <Files *> Header set Cache-Control: "private, pre-check=0, post-check=0, max-age=0" Header set Expires: 0 Header set Pragma: no-cache </Files> What is causing this to not fire reliably? Thanks

    Read the article

< Previous Page | 141 142 143 144 145 146 147 148 149 150 151 152  | Next Page >