如果单击复选框,则将文本字段的值转换为负数

时间:2012-07-10 07:27:23

标签: php jquery html

我有10个文本字段用于数值。每个都有一个复选框。如果选中该复选框,则在文本字段中输入的值必须转换为负值,然后保存在数据库中。如果再次检查,它应该变为正数。

<td><input type="text" name="or" class="num" maxlength="5" ?>" id="or"/>db</td>
<td><input type="text" name="or2" class="num" maxlength="5" />db</td>
<td><input type="text" name="or4" class="num" maxlength="5" />db</td>
<td><input type="text" name="or8" class="num" maxlength="5" />db</td>
<td><input type="text" name="or5" class="num" maxlength="5" />db</td>

每个文本框的复选框

<td>-<input type="checkbox" name="orneg1 " class="check1" id="org"  /></td>
<td>-<input type="checkbox" name="org2" class="check2" /></td>
<td>-<input type="checkbox" name="org4" class="check3" /></td>
<td>-<input type="checkbox" name="org8" class="check4" /></td>
<td>-<input type="checkbox" name="org5" class="check5" /></td>

3 个答案:

答案 0 :(得分:1)

这可行:

$('input[type=checkbox]').each(function(i){
   if ($(this).attr('checked') == 'checked') {
       var inputText  = $('input[type=text]:eq('+i+')');
       var inputValue = parseInt(inputText.val(),10);
       if (inputValue > 0) {
           inputValue = '-'+inputValue;
       } else {
           inputValue = (-1) * inputValue;
       }
       inputText.attr('value', inputValue);
   } 
});

答案 1 :(得分:0)

这里有两件不同的事情:

  • 首先,您要在复选框上的onClick上添加行为。使用jQuery处理它应该没问题。在onClick clabback中,如果选中该复选框,则只需将相关输入文本的值设置为-value。否则你将它设置为abs(值)

  • 然后,您正在谈论在数据库中保存satte。为此,您需要使用ajax调用将输入值作为键/值对传输到服务器。

我猜你现在可以自己处理代码,因为你知道该怎么做:)

答案 2 :(得分:0)

工作示例演示 http://jsfiddle.net/SQSMK/

我建议您同时查看Jquery isNanisNumeric api,

休息此演示应该有所帮助::)

P.S。 - 我希望你有tabletr标签,我在下面的html中添加了一些小调整。

<强>码

$('input[type="checkbox"]').click(function() {

    if ($(this).is(':checked')) {

        $('input[type="text"][name="' + $(this).prop('name') + '"]').val(-$('input[type="text"][name="' + $(this).prop('name') + '"]').val());

    } else {
        $('input[type="text"][name="' + $(this).prop('name') + '"]').val(-parseInt($('input[type="text"][name="' + $(this).prop('name') + '"]').val()));
    }
});​

<强> HTML

<table>
    <tr>
<td><input type="text" name="or1" class="num" maxlength="5" id="or"/>db</td>
                    <td><input type="text" name="or2" class="num" maxlength="5" />db</td>
                    <td><input type="text" name="or4" class="num" maxlength="5" />db</td>
                    <td><input type="text" name="or8" class="num" maxlength="5" />db</td>
                    <td><input type="text" name="or5" class="num" maxlength="5" />db</td>
    </tr>
    <tr>

    <td>-<input type="checkbox" name="or1" class="check1" id="org"/></td>
                    <td>-<input type="checkbox" name="or2" class="check2"  /></td>
                    <td>-<input type="checkbox" name="or3" class="check3"  /></td>
                    <td>-<input type="checkbox" name="or8" class="check4" /></td>
                    <td>-<input type="checkbox" name="or5" class="check5" /></td>
    </tr>
</table​