Goedenavond,

Ik probeer een jquery ui dialog te openen welke door ajax word geladen:



$('#dialog-button').live('click',function(){

alert('dit gaat wel goed');

$('#dialog').dialog('open');//dit niet

});

//en dan wordt dit door ajax geladen

<div id="dialog">

<form>

<input type="text" value="hier een waarde">

</form>

</div>


Maar ik kom er even niet uit hoe ik de dialog kan laten openen..?

Weet iemand hoe dit moet?

Alvast bedankt!
Waar je op moet letten is dat een van de laatste versies van jQuery .live() niet meer ondersteunt. Dat is nu .on().

Zie hier voor verdere uitleg
Ja dat kwam ik ook tegen tijdens mijn zoektocht, maar .on kreeg ik niet aan de praat daar ga ik ook nog even naar kijken.

Het probleem zit niet alleen in de dialog maar ook als je bijvoorbeeld css van een element wilt veranderen. Er is waarschijnlijk wel een oplossing voor, maar ik heb hem nog niet kunnen vinden....
Misschien sla je iets per ongeluk over? Ik heb hier een duidelijk voorbeeld hoe je de dialog van UI gebruikt.

http://jsfiddle.net/24Xuv/2/

Ga alle stappen na om zeker te zijn dat het hoort te werken!
Bedankt voor je reactie, ik heb dezelfde dialog zonder ajax wel getest dan werkt deze. Als ik de html door ajax laad dan werkt hij niet. Ik heb in firefox een dom navigator daarin is te zien dat de html er wel in staat.

Als je bijvoorbeeld en button door ajax genereert heb je .live of .on nodig. datzelfde heb ik nodig voor het openen van de dialog. En stel dat je bijvoorbeeld wilt doen $('#id').html(); Dan werkt dat ook niet, ik vraag me ook af hoe je dat doet. hier helpt .on en .live je volgens mij niet.
Ik liep hier ook tegenaan een tijdje geleden en toen kwam ik met .on() aan en dat werkte gewoon prima. Welke versie van jQuery gebruik je?
1.9 van google. Maar stel dat ik .on gebruik:


$('#dialog-button').on('click' function(){

$('#dialog').dialog('open');

});


Dan werkt de .on toch alleen voor het click event en niet voor de dialog. Ik hoop eigenlijk dat ik het mis heb.
gebruik een komma bij on().

in jouw geval dus

$('#dialog-button').on('click', function(){
	$('#dialog').dialog('open');
});


[size=xsmall]Toevoeging op 11/03/2013 15:18:17:[/size]

wat die on() doet is gewoon een event triggeren door te kijken wat de eerste parameter is. Click in dit geval. Dus als je dan op de button met het id 'dialog-button' klikt hoort hij het dialog te openen.
Ik heb .on aan de praat gekregen, maar de dialog opent nog niet:



$(document).on("click",'#dialog-button',function(){
		alert('dit werkt');
		
		$('#dialog').dialog('open');//dit nog niet

	})



Als je .on of live weg laat werkt de button ook niet, dus daarom denk ik dat de dialog ook niet opent. Ik denk dat hier ook iets mee moet gebeuren.
Je hebt de jquery UI wel aan de praat? Word die wel ingeladen?
Als ik de dialog gewoon in de html zet zonder ajax dan werkt het wel(ik kan dan niet .on gebruiken dan werkt het ook niet). Als ik de dialog open zoals hierboven met de html door ajax dan werkt het niet.

Reageren