Javascript 更新时,Jquery在下拉更改时显示隐藏div无法正常工作
问题:我在应用程序的Javascript 更新时,Jquery在下拉更改时显示隐藏div无法正常工作,javascript,jquery,yii2,Javascript,Jquery,Yii2,问题:我在应用程序的下拉列表中使用Jquery for Show/Hide divchange,当我创建新表单时,它工作得更好,但当我更新它时,表单会折叠到普通视图,而我没有得到应该查看的表单,这使得我再次更改下拉选项,以查看设置为显示的字段 我的JQuery: <?php $this->registerJs(' $(document).ready(function(){ $(\'.ordinary\').hide(); $(\'.special\').
下拉列表中使用Jquery for Show/Hide div
change,当我创建新表单时,它工作得更好,但当我更新它时,表单会折叠到普通视图,而我没有得到应该查看的表单,这使得我再次更改下拉选项,以查看设置为显示的字段
我的JQuery:
<?php
$this->registerJs('
$(document).ready(function(){
$(\'.ordinary\').hide();
$(\'.special\').hide();
$(\'#company-typeofcompany\').change(function () {
var x = $(this).val();
if (x === "ordinary") {
$(\'.ordinary\').show();
$(\'.special\').hide();
}
else
{
$(\'.special\').show();
$(\'.ordinary\').hide();
}
});
});', \yii\web\View::POS_READY);
?>
我猜在更新时,您必须检查下拉值的条件,如果是普通值,则必须显示普通值,并隐藏另一个值的特殊值和替代值。代码可能是
$(document).ready(function(){
$('.ordinary').hide();
$('.special').hide();
if ($('#company-typeofcompany').val() == "ordinary") {
$('.ordinary').show();
$('.special').hide();
} else {
$('.special').show();
$('.ordinary').hide();
}
$('#company-typeofcompany').change(function () {
var x = $(this).val();
if (x === "ordinary") {
$('.ordinary').show();
$('.special').hide();
} else {
$('.special').show();
$('.ordinary').hide();
}
});
});
如果代码已修复,而不是使用yii2的工具进行注册,则可以将其像本机代码一样添加到html代码下方的页面中&请参阅事件中的错误。这可能有助于解决出现的问题。一旦我更改下拉列表并选中,我不会出现任何错误,我需要始终查看show div。如果您的下拉列表将具有预选的普通,请将if($(“#company typeofcompany”).val()=“普通”){更改为if($(“#company typeofcompany”).val()=“特殊”){并显示console.log($(“#company typeofcompany”).val())如果我将其更改为特殊,现在普通,而不是隐藏,它总是显示console.log($(“#company typeofcompany”).val()的情况如何;你告诉我在jquery中编写console.log。对吗?是的……你必须查看该选项框中设置的值,然后我们可以在存在问题的地方进行调试