-5

这个问题与 使用 jQuery/Ajax 的数学计算不同

所以请拒绝投票。

我使用两组单选按钮 我找到的这个小提琴显示了我想要的确切内容 http://jsfiddle.net/8FXFE/6/

我可以为那些我可以在任何计算中使用的按钮添加另一种隐藏类型的值吗?

HTML

<div class="textForm">
<input type="radio" name="txtNumber" value="100" checked="checked" />100
<input type="radio" name="txtNumber" value="200" />200
<input type="radio" name="txtNumber" value="500" />500
<input type="radio" name="txtNumber" value="1000" />1000
<input type="radio" name="txtNumber" value="10000" />10000
<input type="radio" name="txtNumber" value="other" />other
<input type="text" name="other_field" id="other_field" onblur="checktext(this);"
/>
</div>
<div class="formText">
    <input type="radio" name="txtSpace" value="RJ" checked="checked"
    />Space 1.
    <br />
    <input type="radio" name="txtSpace" value="SM" />Space 2.
    <br />
</div>

<h3>Output:</h3>

<div id="output"></div>

就像假设我想制作这样的公式..

如果选择了 100 并且选择了空格 1.

那么公式应该像 (name="txtSpace" value="RJ") 的隐藏值 + (name="txtNumber" value="100") 的隐藏值

可以吗?如果是,如何?

4

3 回答 3

1

试试这个脚本。只需复制并粘贴此代码。

 <script type="text/javascript">
function fnc()
{
count1=document.getElementsByName("txtNumber").length;
count2=document.getElementsByName("txtSpace").length;
for(i=0;i<count1;++i)
{
    el=document.getElementsByName("txtNumber").item(i);
    if(el.checked)
        firstnumber=el.value;

}

for(i=0;i<count2;++i)
{
    el=document.getElementsByName("txtSpace").item(i);
    if(el.checked)
        secondnumber=el.value;

}
if(firstnumber=='100' && secondnumber=='RJ')
{
    alert("now you can write your formula here");
}
}
</script>
于 2013-01-31T12:55:31.583 回答
1

您需要这样的函数来跟踪表单值:

updateForm = function()
{
      var $txtNumber = $('[name=txtNumber]:checked'),
          $txtSpace = $('[name=txtSpace]:checked'),
          out = $txtSpace.val();

    if ($txtNumber.val() == 'other') {
        out += $('#other_field').val(); // use value of other_field
    } else {
        out += $txtNumber.val(); // use value from radio button
    }

    $('#output').text(out);
}

然后,初始化:

updateForm();
$("input[name='txtNumber'],input[name='txtSpace']").change(updateForm);
于 2013-01-31T13:49:45.953 回答
0

利用

<input data-fieldname=""> 

和jQuery

$(this).data('fieldname')

http://jsfiddle.net/FRu67/ <--整理东西

  • 尽量避免使用 input[name='txtNumber'] 类型选择器,因为它们是最慢的
于 2013-01-31T12:54:26.567 回答