javascript - 如何获取具有已分配索引值的数组名称的输入元素?

标签 javascript php jquery html

*请帮助我,我只是一个初学者

我在这个 foreach block 上方有输入字段,但这是我关注的焦点。

foreach ($display_eqp as $value){
  $eqpid = $value['Eqp_ID'];
  $available = $value['OnHand'];

  echo "<tr>";
  echo "<td class='center'><input type='checkbox' class='checkbox' 
            name='request-equipment[". $eqpid ."]' id='". $eqpid ."-checkbox' 
            value=" . $eqpid . " onchange='enableQtyTxtbox(this.value)' disabled></td>";
  echo "<td class='center'><input type='text' class='form-control' 
            style='width: 60px;' name='available-" . $eqpid . "' id='available-" . $eqpid . "' 
            value=" . $available . " readonly></td>";
  echo "<td class='center'><input type='text' placeholder='...' class='form-control'
            style='width: 60px;' onchange='checkQty(this.value, ". $eqpid .")' 
            name='request-quantity[". $eqpid ."]' id='". $eqpid ."' disabled='true'/></td>";
  echo "</tr>";

我有 2 个 javascript。

第一个是这个,当单个复选框的选中状态发生变化时,它会启用/禁用并清除相应的文本框,并启用/禁用提交按钮。这是有效的,仅适用于个人,这是通过勾选复选框触发的。

  function enableQtyTxtbox(val) {
    var checkbox = document.getElementById(val + "-checkbox");
    var textbox = document.getElementById(val);
    var submitbtn = $("input[type='submit']");
    textbox.disabled = !(checkbox.checked);

    if (checkbox.checked) {
        submitbtn.attr("disabled", true);
    }
    else{
        textbox.value = "";
    }
}

现在我关心的是第二个脚本。

function checkValue(id){
    var value = document.getElementById(id).value;
    var checkboxes = $("input[type='checkbox']");

    // this does not work: var textbox= $("input[name='request-quantity[]']"); ????


    if (value == "") {
        checkboxes.attr("disabled", true); //this works
        checkboxes.checked = false; // this does not work, please if you could answer this one 
                                    // for me also, it would be a big help.

        // clear textbox
        // disable textbox
    }
    else{
        checkGroup();
    }
 }

我想在这里做的是获取所有名为 request-quantity 的文本框(这是一个具有指定索引的数组)并像第一个脚本一样清除和禁用它。但我不知道如何访问该元素。

最佳答案

$('input[name^="request-quantity"]') 是用于获取名称以 'request-quantity' 开头的项目的选择器。

Attribute Starts With

Other attribute Selectors

关于javascript - 如何获取具有已分配索引值的数组名称的输入元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27969709/

相关文章:

html - 如何使用嵌套的可折叠菜单?

javascript - 如何获取没有子元素但可能有文本的元素?

javascript - Pinterest 分享 HTML 链接错误

javascript - PHP AJAX Poll 简单代码从 2 个变量答案更改为 2 个以上?

javascript - Angular 2 编译失败

javascript - 如何在 React 中替换对象数组的值

php - 商业 Web 应用程序 PHP -

php - Backbone UI 和 CMS 后端 : Wading through the Restful CRUD

用于按下网页上特定按钮的 JavaScript 代码

javascript - 当选择的值发生变化时更新输入字段?