【问题标题】:Change value of text field based on value in another text field in same row根据同一行中另一个文本字段中的值更改文本字段的值
【发布时间】:2015-10-26 10:08:12
【问题描述】:

我正在使用带有文本字段作为单元格的 Yii CGridView。我使用 CHtml::textField 来显示文本字段。现在我想在同一行中另一个单元格的值发生变化时更新网格中的一个单元格。同一行中文本字段的 ID 有一个共同的数字。例如 ProjectMBookGrid_length_163 和 ProjectMBookGrid_quantity_163。在更改 ProjectMBookGrid_length_163 值时,我想更改 ProjectMBookGrid_quantity_163 中的值,在更改 ProjectMBookGrid_length_164 值时,我想更改 ProjectMBookGrid_quantity_164 中的值。 JS Fiddle https://jsfiddle.net/7ykdkgaw/

<table>
    <tr><td><input type="text" id="ProjectMBookGrid_length_163" name="ProjectMBookGrid[length_163]" value="5" style="text-align: right" class="gridfield"></td><td><input type="text" id="ProjectMBookGrid_quantity_163" name="ProjectMBookGrid[quantity_163]" value="3" style="text-align: right" class="gridfield"></td></tr>
    <tr><td><input type="text" id="ProjectMBookGrid_length_162" name="ProjectMBookGrid[length_162]" value="3" style="text-align: right" class="gridfield"></td><td><input type="text" id="ProjectMBookGrid_quantity_162" name="ProjectMBookGrid[quantity_162]" value="3" style="text-align: right" class="gridfield"></td></tr>
</table>

【问题讨论】:

  • 请弹琴
  • @P.Frank 添加了 JS Fiddle

标签: jquery yii


【解决方案1】:

请查看更新的小提琴:

https://jsfiddle.net/7ykdkgaw/2/

$(document).ready(function(){
    $(document).on("change","input[id^=ProjectMBookGrid_length_]",
        function(){
            var currentVal = $(this).val();
            var currentId = $(this).attr("id");
            var numberInID = currentId.replace("ProjectMBookGrid_length_","");

            var targetText = $("#ProjectMBookGrid_quantity_"+numberInID);
            targetText.val(currentVal);
        });

});

【讨论】:

  • 它不应依赖于“tr”或其他表格元素。是否可以通过文本字段类和id?
猜你喜欢
  • 2017-12-30
  • 1970-01-01
  • 2018-08-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多