Jquery 要将yii中的字段从更改为
我想知道的是,我想使用jQuery更改textField或dropDownList上的dropDownListJquery 要将yii中的字段从更改为,jquery,yii,Jquery,Yii,我想知道的是,我想使用jQuery更改textField或dropDownList上的dropDownList <?php echo $form->dropDownList($model,'name',array('prompt'=>'Select')); ?> OR <?php echo $form->textField($model,'name',array('size'=>60,'ma
<?php echo $form->dropDownList($model,'name',array('prompt'=>'Select')); ?>
OR
<?php echo $form->textField($model,'name',array('size'=>60,'maxlength'=>100)); ?>
如果有人能帮忙,那就太好了。谢谢 我会做一些类似的事情,只做一个很小的更改,以隐藏不应该显示的下拉列表
<?php echo $form->dropDownList($model,'name',array('prompt'=>'Select'),array('style'=>'display:none;')); ?>
OR
<?php echo $form->textField($model,'name',array('size'=>60,'maxlength'=>100,style'=>'display:none;')); ?>
$(document).ready(function() {
$('#Transport_type').change(function() {
var trantype = $(this).val();
if(trantype == 'car' || trantype == 'train'){
$('#dropdownid').show();
$('#textboxid').hide();
}else if(trantype == 'cruise' || trantype == 'airline'){
$('#textboxid').show();
$('#dropdownid').hide()
}
});
});
如果使用模型,还可以替换自动生成的模型的ID
$(document).ready(function() {
$("#<?php echo CHtml::activeId($model, "type"); ?>").change(function() {
var trantype = $(this).val();
if(trantype == 'car' || trantype == 'train'){
$('#dropdownid').show();
$('#textboxid').hide();
}else if(trantype == 'cruise' || trantype == 'airline'){
$('#textboxid').show();
$('#dropdownid').hide()
}
});
});
$(文档).ready(函数(){
$(“#”)更改(函数(){
var trantype=$(this.val();
如果(trantype='car'| | trantype=='train'){
$('#dropdownid').show();
$('#textboxid').hide();
}否则如果(trantype=='cruise'| | trantype=='airline'){
$('#textboxid').show();
$('#dropdownid').hide()
}
});
});
通过这样做,您可以保护您的代码,以防框架上的更改会改变表单ID的自动生成方式
$(document).ready(function() {
$("#<?php echo CHtml::activeId($model, "type"); ?>").change(function() {
var trantype = $(this).val();
if(trantype == 'car' || trantype == 'train'){
$('#dropdownid').show();
$('#textboxid').hide();
}else if(trantype == 'cruise' || trantype == 'airline'){
$('#textboxid').show();
$('#dropdownid').hide()
}
});
});
如果ID相同,则应在更改类型时使用JQuery append and destroy和destroy/create en元素来解决此问题
如果不禁用非活动的Yii表单字段,您将无法发布数据 通过使用jQuery添加一件事情,您可以轻松做到这一点。也就是说,对处于非活动状态的yii表单字段使用“禁用”属性。那么,这就不算了。另外,首先,当表单加载时,禁用将在类型更改下拉列表中显示的表单字段 此外,您必须从模型中的name字段中删除“REQUIRED”,并且可以在验证Yii表单之前使用javascript/jquery将其设置为REQUIRED HTML: 我希望,这会有帮助。谢谢
<script>
jQuery(document).ready(function() {
$('#Transport_type').change(function() {
var trantype = $('#Transport_type').val();
if(trantype == 'car' || trantype == 'train'){
$('input#Transport_name').show();
$('select#Transport_name').hide();
}else if(trantype == 'cruise' || trantype == 'airline'){
$('input#Transport_name').hide();
$('select#Transport_name').show();
}
});
});
</script>
jQuery(文档).ready(函数(){
$(“#传输类型”)。更改(函数(){
var-trantype=$(“#传输类型”).val();
如果(trantype='car'| | trantype=='train'){
$('input#Transport_name').show();
$('select#Transport_name').hide();
}否则如果(trantype=='cruise'| | trantype=='airline'){
$('input#Transport_name').hide();
$('select#Transport_name')。show();
}
});
});
试试这个。但是它们的ID是相同的,因为它们是相同的字段。但我想在输入dropdownlist的更改时显示为dropdownlist或textfield。
$(document).ready(function() {
$('#Transport_type').change(function() {
var trantype = $(this).val();
if(trantype == 'car' || trantype == 'train'){
$('#dropdownid').show();
$('#textboxid').hide();
}else if(trantype == 'cruise' || trantype == 'airline'){
$('#textboxid').show();
$('#dropdownid').hide()
}
});
});
$(document).ready(function() {
$("#<?php echo CHtml::activeId($model, "type"); ?>").change(function() {
var trantype = $(this).val();
if(trantype == 'car' || trantype == 'train'){
$('#dropdownid').show();
$('#textboxid').hide();
}else if(trantype == 'cruise' || trantype == 'airline'){
$('#textboxid').show();
$('#dropdownid').hide()
}
});
});
<div id="dropdownId">
<?php echo $form->dropDownList($model,'name',array('prompt'=>'Select')); ?>
</div>
<div style="display:none;" id="textboxId">
<?php echo $form->textField($model,'name',array('size'=>60,'maxlength'=>100,'disabled'=>'disabled')); ?>
</div>
<?php echo $form->error($model, 'name'); ?>
$('#Transport_type').change(function() {
var trantype = $('#Transport_type').val();
if(trantype == 'car' || trantype == 'train'){
//Here I wanna show dropdownlist
$("#dropdownId").show();
$("#textboxId").hide();
$("#textboxId input").prop("disabled",true);
$("#dropdownId select").prop("disabled",false);
}else if(trantype == 'cruise' || trantype == 'airline'){
//Here I wanna show textfield
$("#textboxId").show();
$("#dropdownId").hide();
$("#dropdownId select").prop("disabled",true);
$("#textboxId input").prop("disabled",false);
}
});
<script>
jQuery(document).ready(function() {
$('#Transport_type').change(function() {
var trantype = $('#Transport_type').val();
if(trantype == 'car' || trantype == 'train'){
$('input#Transport_name').show();
$('select#Transport_name').hide();
}else if(trantype == 'cruise' || trantype == 'airline'){
$('input#Transport_name').hide();
$('select#Transport_name').show();
}
});
});
</script>