0

我正在开发 mvc 应用程序,在我的表格列表中,我在同一行中有两个文本框,我想要验证用户只能在一个文本框中输入数据。两个文本框都是价格,因此用户只能在一个文本框中输入价格。如果在文本框中输入价格应该在同一行的另一个文本框中写 0。我做了这样的事情:

<td id="tdprice">
    <input type="text" id="txtprice" class="inputprice" onfocus="changeValues('@string.Format(" tr{0} ", @item.Id)','inputmarkup')" value="@string.Format(" {0:0.00} ", item.ManualPrice)" style="width:50px" />
</td>
<td id="tdmarkup">
    <input type="text" id="txtmarkup" class="inputmarkup" onfocus="changeValues('@string.Format(" tr{0} ", @item.Id)','inputprice')" value="@string.Format(" {0:0.00} ", item.MarkUp)" style="width:50px" />
</td>

我的java脚本功能:

function changeValues(tr, css) {
    alert(tr);
    alert(css);
    var tr1 = "'#" + tr + "'";
    var css1 = "'." + css + "'";
    $(this).closest(tr1).find(css1).val('');
}

在这个函数中,我得到了两个值,第一个是表格行和我想设置为 0 的文本框。我该怎么做?这个java脚本也只在第一行触发,为什么会这样??立即帮助将不胜感激。

4

1 回答 1

0

工作演示http://jsfiddle.net/cse_tushar/7NLa8/1

$('table tr td input[type="text"]').focus(function () {
    $(this).parent().parent().find('input[type="text"]').not(this).val('');
});
于 2013-07-25T06:27:12.337 回答