文本框的Onfocus清除剃刀中同一行中的其他文本框

时间:2013-07-25 06:16:05

标签: jquery asp.net-mvc-3 asp.net-mvc-4 asp.net-mvc-2

我正在研究mvc应用程序,在我的表列表中我有两个同一行的文本框,我想验证用户只能在一个文本框中输入数据。 textboxex都是价格,因此用户只能在一个文本框中输入价格。如果在文本框中输入价格应该在同一行的另一个文本框中写入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.how我这样做吗?这个java脚本也只在第一行触发了为什么呢?我们将不胜感激。

1 个答案:

答案 0 :(得分: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('');
});