簡體   English   中英

使用jQuery基於下拉選擇選擇單選按鈕

[英]select radio button based on dropdown selection using jquery

在下面的代碼中,如果我選擇try1,它將搜索db並在輸入框中顯示相應的值以及單選按鈕。 此處輸入框值正確顯示,但單選按鈕不起作用。 需要幫忙

腳本:

$("#test1").change(function()
    {
        $.post('test_file.php', {test_name: $(this).val() },
        function(opt){
        $("#name33").val(opt.test_code);
        $('#ok').val(opt.test_code2);
        }, 'json');

    }); 

HTML:

<table><tr>
<td>
<select name="test1" id="test1" >
<option >try1</option>
<option >try2</option>
</select>
</td>
<td>
<input type="text" name="name33" id="name" />
</td>
<td>
<input type="radio" name="ok" id="ok" value="ok"/>ok
<input type="radio" name="ok" id="ok" value="not_ok"/>Not ok                
</td>

test_file.php

$db_sql = $db->queryUniqueObject("SELECT * FROM client WHERE test_name='".$_POST['test_name']."'" );
$test_code1=$db_sql->name;
$test_code2=$db_sql->try;

if($db_sql!=NULL)
{
$arr = array ("test_code1"=>"$test_code1","test_code2"=>"$test_code2");
echo json_encode($arr);
}
else
{
$arr1 = array ("no"=>"no");
echo json_encode($arr1);

}

采用

if(opt.test_code2=="ok")
{
  $('input:radio[value=ok]').prop("checked",true);
}
else if(opt.test_code2=="not_ok")
{
  $('input:radio[value=not_ok]').prop("checked",true);
}

代替

$('#ok').val(opt.test_code2);

因為您僅使用.val()函數設置值,並且單選按鈕的id不唯一,所以您必須將radio value用作選擇器。 如果要根據單選按鈕的值進行檢查,則必須使用.prop()函數。

演示

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM