Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/411.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用removeattr启用文本框并再次禁用_Javascript_Jquery - Fatal编程技术网

Javascript 使用removeattr启用文本框并再次禁用

Javascript 使用removeattr启用文本框并再次禁用,javascript,jquery,Javascript,Jquery,如果条件匹配,我想启用所有文本框。有一个下拉列表,其中包含是/否选项。如果选择“是”,则我想再次禁用某些文本框,但它不起作用。我使用此代码启用所有文本框: $(':input').removeAttr('disabled'); 之后,如果从下拉列表中选择“是”,则使用此代码 $(document).ready(function() { var n = $("#pharmacy_pur").val(); if(n == "YES") { $('#phar

如果条件匹配,我想启用所有文本框。有一个下拉列表,其中包含是/否选项。如果选择“是”,则我想再次禁用某些文本框,但它不起作用。我使用此代码启用所有文本框:

$(':input').removeAttr('disabled');
之后,如果从下拉列表中选择“是”,则使用此代码

$(document).ready(function() {
    var n = $("#pharmacy_pur").val();
    if(n == "YES")
    {
         $('#pharmacy_amount').attr("disabled", "disabled");
    }
}); 
但它不起作用。有人给我建议如何解决这个问题吗。我想启用所有文本框,如果选择了下拉选项,则禁用其中一些。以下是html部分:

<select name="pharmacy_pur" ID="pharmacy_pur">
 <option value="YES"<?php echo $r1 == "YES" ? " selected" : ""?>>YES</option>
<option value="NO"<?php echo $r1 == "NO" ? " selected" : "";?>>NO</option>
                                </select>
<input type="text" name="pharmacy_amount" ID="pharmacy_amount"/>
PHP代码:

$qu="select * from `scan_1` where P_no='1'";
$res=mysqli_query($con,$qu);
if(!$res || mysqli_num_rows($res)==0)
{
echo '<script>alert("Invalid:");</script>';
} 
$row=mysqli_fetch_assoc($res);
$r1=$row["Pharmacy_purchase"];
试试这个

$document.readyfunction{ $'pharmacy\u pur'。关于“更改”,函数{ var n=$pharmacy\u pur选项:selected.text; 如果n==是{ $'Pharmaceu\u amount'.propdisabled,true; } }; }; -挑选- 对 不 使用prop而不是attr来更新DOM属性,如disabled、checked等

替换

$(':input').removeAttr('disabled');

演示

$document.readyfunction{ var n=$pharmacy\u pur.val; $':input'.removeAttr'已禁用'; $pharmacy\u pur.changefunction{ var n=$this.val; $'pharmacy\u amount'.propdisabled,n==是; }; $pharmacy\u pur.change; }; 对 不
如果要同时启用和禁用textbox,请在启用js代码的内部放置循环,如:

$(document).ready(function() {
var n = '<?php echo $pr; ?>';
var r1='<?php echo $r5;?>';
if(n == "1")
{
    $(':input').removeAttr('readonly');
    $(':input').prop('disabled', false);
    if(r1=="NO")
    {
        $('#pharmacy_amount').attr("disabled", "disabled");
    }
 }

也添加html。使用prop而不是attr…$'药房金额已禁用,为真;要禁用是/否文本还是值?我添加了html代码。请建议一些解决方案,在编辑时如何检查值是否为是?有可能是使用PHP还是其他什么?您是否可以提供编辑代码,因为您在编辑时需要此功能。是,它正在工作,但如果已选择“是”,该怎么办。我的意思是,如果我在编辑页面中使用此代码,并且该页面在下拉列表中有“是”,并且它没有禁用它们。是的,它正在工作,但如果已经选择了“是”,该怎么办。我的意思是,如果我在编辑页面中使用此代码,并且该页面在下拉列表中有“是”,那么它不是禁用的them@Shalini查看演示
if(n == "YES")
{
         $('#pharmacy_amount').attr("disabled", "disabled");
}
$('#pharmacy_amount').prop("disabled", ( n == "YES") );
$(document).ready(function() {
var n = '<?php echo $pr; ?>';
var r1='<?php echo $r5;?>';
if(n == "1")
{
    $(':input').removeAttr('readonly');
    $(':input').prop('disabled', false);
    if(r1=="NO")
    {
        $('#pharmacy_amount').attr("disabled", "disabled");
    }
 }