On 3 May 2012, at 14:24, akshar jamgaonkar <akshar.jamgaon...@gmail.com> wrote:
> Yes i have a Select box with this id = "client_state_id" .. when i run > $("#client_state_id") the select drop down control gets highlighted. Thanks Try using replaceWith() instead of html() in your success function. > > On Thu, May 3, 2012 at 6:46 PM, Jeremy Walker <jez.wal...@gmail.com> wrote: > > > On 3 May 2012, at 14:06, AJ <akshar.jamgaon...@gmail.com> wrote: > > > Hello All, > > > > ill just summarize everything in this message..kindly suggest as to > > what might be wrong > > Do you have a div with the id of "client_state_id"? What do you get if you > run $("#client_state_id") in firebug? > > Jeremy Walker > > > > > > > ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- > > Iam trying to achiev a functionlity of state drop down > > been populated on click of country........i have achieved almost 90% > > of this......iam getting appropriate responce in my firebug. responce > > is like this when i click india..... > > > > <select id="states_state_id" name="states[state_id]"><option > > value="2">Goa</option></select> > > > > > > my application .js looks like this > > > > $(document).ready(function() { > > var country_states_path = '/states/countries_state/'; > > $("#client_country_id").change(function() { > > var country_id = $(this).val(); > > $.ajax({ > > type: "GET", > > data: {country: country_id}, > > url: country_states_path+country_id, > > success: function(data) { > > $("#client_state_id").html(data) > > } > > }); > > }); > > }); > > > > > > > > the controller state has an action like this > > > > def countries_state > > @state = State.where("country_id = :c_id",{:c_id => > > params[:country_id]}) > > respond_to do |format| > > format.js > > end > > end > > > > > > > > and template for this action is like > > > > <%= select("states", "state_id", @state.collect{|s| [s.name,s.id]}) %> > > > > > > However i am getting the response in firebug but the html on page is > > not updated. Iam trying to find but iam stuck as iam a bit new to all > > this. > > > > > > Please suggest as to what might be wrong. thanks a lot > > > > > > Thanks & Regards, > > Akshar > > > > > > > > > > > > > > > > ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- > > > > > > On May 3, 5:52 pm, akshar jamgaonkar <akshar.jamgaon...@gmail.com> > > wrote: > >> Hi all, > >> > >> I have succesfully got a responce like this as to what i want , this is the > >> ouptut in my fireofx console. > >> > >> <select id="states_state_id" name="states[state_id]"><option > >> value="1">Maharashtra</option></select>. > >> > >> but the html on the page is not updating.......any reson why this could be > >> ...thanks a lot.... > >> > >> On Thu, May 3, 2012 at 5:58 PM, akshar jamgaonkar < > >> > >> > >> > >> > >> > >> > >> > >> akshar.jamgaon...@gmail.com> wrote: > >>> Also in the def countries_state > >>> @state = State.where("country_id = :c_id",{:c_id => params[:country_id]}) > >>> respond_to do |format| > >>> format.html > >>> end > >>> end > >> > >>> previously the it was format.js when nothing on the page was changing > >>> dynamically but when i make it format.html, the state drop down changes > >>> but > >>> i get all the unnecessary thing like the the entire html page. > >> > >>> Thanks > >> > >>> On Thu, May 3, 2012 at 5:47 PM, akshar jamgaonkar < > >>> akshar.jamgaon...@gmail.com> wrote: > >> > >>>> Hi Aziz.... > >> > >>>> Iam getting whatevr reponce iam nneding,....... Thansk a lot.....in > >>>> the console in firbug when i see i get the states for a specific > >>>> counytry.....The responce is like "[["Goa", 2]]" .... however > >>>> whatever processing i do in application.js in not taking effect,,,,,, > >> > >>>> My application.js is > >> > >>>> $(document).ready(function() { > >>>> var country_states_path = '/states/countries_state/'; > >>>> $("#client_country_id").change(function() { > >>>> var country_id = $(this).val(); > >>>> $.ajax({ > >>>> type: "GET", > >>>> data: {country: country_id}, > >>>> url: country_states_path+country_id, > >>>> success: function(data) { > >>>> $("#client_country_id").html(data) > >>>> } > >>>> }); > >>>> }); > >>>> }); > >> > >>>> On Thu, May 3, 2012 at 5:36 PM, Aziz Bookwala > >>>> <aziz.bookw...@gmail.com>wrote: > >> > >>>>> Not a problem. > >> > >>>>> On Thu, May 3, 2012 at 5:32 PM, akshar jamgaonkar < > >>>>> akshar.jamgaon...@gmail.com> wrote: > >> > >>>>>> Thanks Aziz ....thanks a lot...really appriaciate your help > >> > >>>>>> On Thu, May 3, 2012 at 5:31 PM, Aziz Bookwala > >>>>>> <aziz.bookw...@gmail.com>wrote: > >> > >>>>>>> That is fine, though you could make it more 'RESTful' by adding it as > >>>>>>> a nested resource. You can read about that > >>>>>>> here<http://railscasts.com/episodes/139-nested-resources>. > >>>>>>> The RailsCast is a little old, but you should get the idea. > >> > >>>>>>> With respect to your current problem, what is the url you are using in > >>>>>>> your js? > >> > >>>>>>> On Thu, May 3, 2012 at 5:23 PM, akshar jamgaonkar < > >>>>>>> akshar.jamgaon...@gmail.com> wrote: > >> > >>>>>>>> Iam sorry i didnt get you.......... i have created a new action for > >>>>>>>> the ajax stuff is this approach wrong..... This is how my states > >>>>>>>> controller > >>>>>>>> is > >> > >>>>>>>> --------------------------------------------------------------------------- > >>>>>>>> > >>>>>>>> --------------------------------------------------------------------------- > >>>>>>>> ----------------------------------- > >> > >>>>>>>> class StatesController < ApplicationController > >>>>>>>> # GET /states > >>>>>>>> # GET /states.json > >>>>>>>> def index > >>>>>>>> @states = State.all > >> > >>>>>>>> respond_to do |format| > >>>>>>>> format.html # index.html.erb > >>>>>>>> format.json { render json: @states } > >>>>>>>> end > >>>>>>>> end > >> > >>>>>>>> # GET /states/1 > >>>>>>>> # GET /states/1.json > >>>>>>>> def show > >>>>>>>> @state = State.find(params[:id]) > >> > >>>>>>>> respond_to do |format| > >>>>>>>> format.html # show.html.erb > >>>>>>>> format.json { render json: @state } > >>>>>>>> end > >>>>>>>> end > >> > >>>>>>>> # GET /states/new > >>>>>>>> # GET /states/new.json > >>>>>>>> def new > >>>>>>>> @state = State.new > >>>>>>>> respond_to do |format| > >>>>>>>> format.html # new.html.erb > >>>>>>>> format.json { render json: @state } > >>>>>>>> end > >>>>>>>> end > >> > >>>>>>>> # GET /states/1/edit > >>>>>>>> def edit > >>>>>>>> @state = State.find(params[:id]) > >>>>>>>> end > >> > >>>>>>>> # POST /states > >>>>>>>> # POST /states.json > >>>>>>>> def create > >>>>>>>> @state = State.new(params[:state]) > >> > >>>>>>>> respond_to do |format| > >>>>>>>> if @state.save > >>>>>>>> format.html { redirect_to @state, notice: 'State was > >>>>>>>> successfully created.' } > >>>>>>>> format.json { render json: @state, status: :created, > >>>>>>>> location: @state } > >>>>>>>> else > >>>>>>>> format.html { render action: "new" } > >>>>>>>> format.json { render json: @state.errors, status: > >>>>>>>> :unprocessable_entity } > >>>>>>>> end > >>>>>>>> end > >>>>>>>> end > >> > >>>>>>>> def countries_state > >>>>>>>> @state = State.find("country_id = :c_id",{:c_id => params[:country]}) > >>>>>>>> respond_to do |format| > >>>>>>>> format.html > >>>>>>>> format.js > >>>>>>>> end > >>>>>>>> end > >> > >>>>>>>> # PUT /states/1 > >>>>>>>> # PUT /states/1.json > >>>>>>>> def update > >>>>>>>> @state = State.find(params[:id]) > >> > >>>>>>>> respond_to do |format| > >>>>>>>> if @state.update_attributes(params[:state]) > >>>>>>>> format.html { redirect_to @state, notice: 'State was > >>>>>>>> successfully updated.' } > >>>>>>>> format.json { head :ok } > >>>>>>>> else > >>>>>>>> format.html { render action: "edit" } > >>>>>>>> format.json { render json: @state.errors, status: > >>>>>>>> :unprocessable_entity } > >>>>>>>> end > >>>>>>>> end > >>>>>>>> end > >> > >>>>>>>> # DELETE /states/1 > >>>>>>>> # DELETE /states/1.json > >>>>>>>> def destroy > >>>>>>>> @state = State.find(params[:id]) > >>>>>>>> @state.destroy > >> > >>>>>>>> respond_to do |format| > >>>>>>>> format.html { redirect_to states_url } > >>>>>>>> format.json { head :ok } > >>>>>>>> end > >>>>>>>> end > >>>>>>>> end > >> > >>>>>>>> --------------------------------------------------------------------------- > >>>>>>>> > >>>>>>>> --------------------------------------------------------------------------- > >>>>>>>> ------------------------------------ > >> > >>>>>>>> On Thu, May 3, 2012 at 5:20 PM, Aziz Bookwala < > >>>>>>>> aziz.bookw...@gmail.com> wrote: > >> > >>>>>>>>> Make sure ur using the currect URL for the new action. > >> > >>>>>>>>> On Thu, May 3, 2012 at 5:18 PM, akshar jamgaonkar < > >>>>>>>>> akshar.jamgaon...@gmail.com> wrote: > >> > >>>>>>>>>> Yea it looks like this... > >> > >>>>>>>>>> match "/states/countries_state/:country_id" => > >>>>>>>>>> "states#countries_state" > >> > >>>>>>>>>> resources :clients > >> > >>>>>>>>>> resources :skill_sets > >> > >>>>>>>>>> resources :technologies > >> > >>>>>>>>>> resources :level_of_contacts > >> > >>>>>>>>>> resources :states > >> > >>>>>>>>>> resources :discounts > >> > >>>>>>>>>> resources :countries > >> > >>>>>>>>>> resources :roles > >> > >>>>>>>>>> get "home/index" > >> > >>>>>>>>>> On Thu, May 3, 2012 at 5:15 PM, Aziz Bookwala < > >>>>>>>>>> aziz.bookw...@gmail.com> wrote: > >> > >>>>>>>>>>> Make sure this route comes before the route entry for the country > >>>>>>>>>>> resource. > >> > >>>>>>>>>>> On Thu, May 3, 2012 at 5:12 PM, akshar jamgaonkar < > >>>>>>>>>>> akshar.jamgaon...@gmail.com> wrote: > >> > >>>>>>>>>>>> Yes i have added....it looks like this > >> > >>>>>>>>>>>> match "/states/countries_state/:country_id" => > >>>>>>>>>>>> "states#countries_state" > >> > >>>>>>>>>>>> On Thu, May 3, 2012 at 5:10 PM, Aziz Bookwala < > >>>>>>>>>>>> aziz.bookw...@gmail.com> wrote: > >> > >>>>>>>>>>>>> Did you add a route for this new action? > >> > >>>>>>>>>>>>> On Thu, May 3, 2012 at 5:08 PM, akshar jamgaonkar < > >>>>>>>>>>>>> akshar.jamgaon...@gmail.com> wrote: > >> > >>>>>>>>>>>>>> Thanks Aziz....... I have wriiten a countries_state action and > >>>>>>>>>>>>>> in states controller, and in application.js i have modified > >>>>>>>>>>>>>> the path like > >>>>>>>>>>>>>> this > >>>>>>>>>>>>>> var country_states_path = '/states/countries_state/'; however > >>>>>>>>>>>>>> on console its giving me eroor like > >>>>>>>>>>>>>> <pre>Couldn't find State with id=countries_state</pre> ... Iam > >>>>>>>>>>>>>> struggling to find what;s going wrong as iam pretty new to all > >>>>>>>>>>>>>> this...thanks a lot all of you for your help...... > >> > >>>>>>>>>>>>>> On Thu, May 3, 2012 at 5:03 PM, Aziz Bookwala < > >>>>>>>>>>>>>> aziz.bookw...@gmail.com> wrote: > >> > >>>>>>>>>>>>>>> Hey AJ > >> > >>>>>>>>>>>>>>> Yes, to serve any request made by your client, you would need > >>>>>>>>>>>>>>> something on the server to handle the request. > >>>>>>>>>>>>>>> As for rendering the dropdown, this is a pretty simple thing > >>>>>>>>>>>>>>> to do with jQuery. Look around, you should find something > >>>>>>>>>>>>>>> quite easily. > >> > >>>>>>>>>>>>>>> On Thu, May 3, 2012 at 5:01 PM, akshar jamgaonkar < > >>>>>>>>>>>>>>> akshar.jamgaon...@gmail.com> wrote: > >> > >>>>>>>>>>>>>>>> Hey Aziz, > >> > >>>>>>>>>>>>>>>> really thanks for you repl..........so do i need to > >>>>>>>>>>>>>>>> write a controller action that would return me the states > >>>>>>>>>>>>>>>> depending on the > >>>>>>>>>>>>>>>> country and how do i render the state drop down in Cilent > >>>>>>>>>>>>>>>> Form...Thanks.... > >> > >>>>>>>>>>>>>>>> Thanks, > >>>>>>>>>>>>>>>> AJ > >> > >>>>>>>>>>>>>>>> On Thu, May 3, 2012 at 4:46 PM, Aziz Bookwala < > >>>>>>>>>>>>>>>> aziz.bookw...@gmail.com> wrote: > >> > >>>>>>>>>>>>>>>>> Hey AJ > >> > >>>>>>>>>>>>>>>>> In your ajax call, you need to pass the id of the selected > >>>>>>>>>>>>>>>>> state if you are using a nested resource url structure. > >>>>>>>>>>>>>>>>> Your js would looks something like this: > >> > >>>>>>>>>>>>>>>>> $(document).ready(function() { > >>>>>>>>>>>>>>>>> var country_states_path = '/countries/:id/states; > >>>>>>>>>>>>>>>>> $("#client_country_id").change(function() { > >> > >> ... > >> > >> read more ยป > > > > -- > > You received this message because you are subscribed to the Google Groups > > "Ruby on Rails: Talk" group. > > To post to this group, send email to rubyonrails-talk@googlegroups.com. > > To unsubscribe from this group, send email to > > rubyonrails-talk+unsubscr...@googlegroups.com. > > For more options, visit this group at > > http://groups.google.com/group/rubyonrails-talk?hl=en. > > > > > > -- > You received this message because you are subscribed to the Google Groups > "Ruby on Rails: Talk" group. > To post to this group, send email to rubyonrails-talk@googlegroups.com. > To unsubscribe from this group, send email to > rubyonrails-talk+unsubscr...@googlegroups.com. > For more options, visit this group at > http://groups.google.com/group/rubyonrails-talk?hl=en. > > > > > -- > Thanks & Regards, > Akshar Jamgaonkar > > -- > You received this message because you are subscribed to the Google Groups > "Ruby on Rails: Talk" group. > To post to this group, send email to rubyonrails-talk@googlegroups.com. > To unsubscribe from this group, send email to > rubyonrails-talk+unsubscr...@googlegroups.com. > For more options, visit this group at > http://groups.google.com/group/rubyonrails-talk?hl=en. -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk@googlegroups.com. To unsubscribe from this group, send email to rubyonrails-talk+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.