这是我的脚本代码。这有什么不对劲。
$(function() {
$('#type').on('change', function() {
if ($('#type').val('Workshop'))
$('#color').val('Orange'));
else if ($('#type').val('Social'))
$('#color').val('Green');
else if ($('#type').val('Other'))
$('#color').val('Red'));
});
});
以下是投放框和隐藏字段的形式。
{!! Form::select('type', array('type' => 'type','Workshop' => 'Workshop', 'Social' =>
'Social','Other' => 'Other'), 'type', ['id' => 'type']) !!}
{!! Form::hidden('color','', ['id' => 'color']) !!}
答案 0 :(得分:0)
您需要更新JavaScript函数中的代码才能进行有效检查,例如
if ( $(this).val() == 'Workshop' )
$('#color').val('Orange'));
...
答案 1 :(得分:0)
您应该使用$(this).val()
获取所选值,然后将其与字符串('Workshop','Social','Other')进行比较,$('#type').val('Workshop')
会将值Workshop
分配给#type
元素:
$(function() {
$('#type').on('change', function() {
var selected_option = $(this).val();
if (selected_option == 'Workshop')
$('#color').val('Orange'));
else if (selected_option == 'Social')
$('#color').val('Green');
else if (selected_option == 'Other')
$('#color').val('Red'));
});
});
希望这有帮助。
答案 2 :(得分:0)
val('Workshop')更改输入的值。 你可以用这个:
if ( this.value=='Workshop' )
$('#color').val('Orange'));
或
if ( $(this).val()=='Workshop' )
$('#color').val('Orange'));