【问题标题】:Using mapping in javascript在 javascript 中使用映射
【发布时间】:2013-09-13 06:28:24
【问题描述】:

我想要一个 javascript 函数,用于将复选框 id 与 grails 中其他字段的值进行映射

我有一个带有复选框和成本字段的 gsp 页面,如下所示

<td>
                    <g:checkBox type="checkbox" class="select_all" name="counTestUnit" id="${testUnitInstance.id}" />
                    </td>


                    <td>
                        <g:textField name="cost"  maxlength="20" required="" id="${testUnitInstance.id}"  />
                    </td>

我想要一个 javascript 函数,在选中的复选框 id 与成本字段之间进行映射

【问题讨论】:

  • 有点不清楚,?你如何比较手段?复选框具有布尔值,文本字段将具有字符串值?
  • 复选框将有单独的 id,文本字段将有整数值,,,,,,,使用选中的复选框 id 我想选择相应的成本值
  • 那么清楚,我猜!

标签: javascript grails


【解决方案1】:

您需要复选框的更改功能,并为 id 添加 intital 以区分成本文本字段,因为 intital 稍后跟随 ID,您提取该 ID 并找到相应的成本字段。

"c_${testUnitInstance.id}"

例子

<g:checkBox type="checkbox" class="select_all" name="counTestUnit" id="c_${testUnitInstance.id}" onChange="FindCost('c_${testUnitInstance.id}')"/>

<g:javascript>    

function FindCost(chckboxname){  
console.log("check Status:"+$("#"+chckboxname).prop("checked"));
var arrayOfchckBoxId = chckboxname.split("_"); //parse the two parts of the name after _

var commnidforcheckandcost = arrayOfchckBoxId[1];

var initialname = arrayOfchckBoxId[0];

var currentCheckbox = "#"+chckboxname ;

console.log("ID:"+arrayOfchckBoxId[1]);
console.log("Name:"+currentCheckbox);

if(initialname == 'c'){
//display the corresponsing cost text field.

$("#"+commnidforcheckandcost").show() //display the cost with a give id like checkbox

 }

</g:javascript>

我想这应该可以解决您的问题以获得更多帮助,请参阅 javascript 控制台调试。

【讨论】:

  • danielad 我已经有用于检索已选中复选框的 javascript 函数,即 jQuery(document).ready(function(){ alert("checking for checkbox"); jQuery('#groupdelete')。 on('click', function(){ var names = []; alert("*********"); jQuery('input:checked').each(function() { var cost = document .getElementById('costId').value; alert(cost); alert("进来"); names.push(jQuery(this).attr("id")); }); alert(names); }) }) 在这里我想获取该特定 id 的相应成本值
  • @oh 太浪费了?那么它可能会帮助一些人吗?我没有准确地回答你的问题:(
【解决方案2】:

你可以这样做

<td>
                    <g:checkBox type="checkbox" class="select_all" name="counTestUnit" id="checkbox${testUnitInstance.id}" onclick="mapCheckAndField(${testUnitInstance.id})"/>
                    </td>


                    <td>
                        <g:textField name="cost"  maxlength="20" required="" id="textField${testUnitInstance.id}"  />
                    </td>
<script>
function mapCheckAndField(testUnitId)
{
   //we know that now checkboxId is "checkbox"+testUnitId
   //and corresponding textField id is "textField"+testUnitId
   //Simply you will get the value of checkbox corresponding textField value as below
   $("#textField"+testUnitId).val()
}
</script>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-11-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-19
    • 2011-08-04
    • 2015-05-26
    • 1970-01-01
    • 2015-01-31
    相关资源
    最近更新 更多