رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
افزودن کد جاوا هنگام افزودن سطر
#1
سلام
من یه جدول دارم که می خوام چند سطر بهش اضافه بشه
یک دکمه گذاشم و با جی کوئری این کار رو کردم
فقط من می خوام هر زمانی که کد اضافه کردن سطر اجرا میشه یک کد دیگه جاوا اسکریپ هم اضافه بشه
من برای این کار کد زیر رو بکار بردم

<script type="text/javascript" >
	$(function() {
		$("#demo").persianDatepicker();
	});
	$('#addRow').click(function () {

		var index= <?php echo $index = $index+1 ;?>;
		html = '' ;
		html = '<tr>';
		html += '<td><?php echo $ztg->getStateDropdwon($index) ;?></td>';
		html += '<td><select id="city'+index+'" name="ZoneToGeozone['+index+'][zone_id]"><option value="">--یک استان را انتخاب کنید --</option></select></td>';
		html += '<td></td>';
		html += '</tr>';
		$("#ztg  > tbody:last-child").append(html); 
		<?php 
		Yii::app()->clientScript->registerScript("ROW", "
				jQuery(function($) {
				jQuery('body').on('change','#ZoneToGeozone_".$index."_country_id',function(){jQuery.ajax({'type':'POST','url':'/shop/admin/Geozone/city','data':{'id':$(this).val()},'cache':false,'success':function(html){jQuery('#city".$index."').html(html)}});return false;});
		});
				");
		?>
			
	});

</script>
.
این کد در یک مرحله جواب میده یعنی وقتی سطر اول اضافه میشه درست کار میکنه ولی در سطرهای بعدی کار نمی کنه
میشه من رو راهنمایی کنید
پاسخ
تشکر شده توسط:
#2
شما نمیتونید از JS بخواین که کد PHP اجرا کنه. باید کدتون رو خارج از رویداد بگذارین و ترجیحاً بجای click از on یا live استفاده کنید و ضمناً اگه چند عنصر از یک نوع دارین، بجای id از class استفاده کنید (بجای # از کارکتر . باید استفاده بشه).
پاسخ
تشکر شده توسط: googoli
#3
استاد من از live این طوری استفاده می کنم ولی جواب نمی گیرم حتی یه پیغام  ساده
$(document).ready(function() {
	  $('#btnAdd').live('click', function() {
		  alert('ok');
	  });

	});
کجای کار من اشکال داره
پاسخ
تشکر شده توسط:
#4
توی نسخه های جدید jQuery باید از on استفاده کنید. شاید مشکل از اون باشه.
پاسخ
تشکر شده توسط:




کاربران در حال بازدید این موضوع: 1 مهمان