Javascript IE中的jquery屏蔽/警报问题

Javascript IE中的jquery屏蔽/警报问题,javascript,jquery,internet-explorer,Javascript,Jquery,Internet Explorer,我有一张桌子,一个上面有货币输入掩码的输入框。我还没有遇到任何问题,但现在它似乎不能正常工作,我无法从中得到任何提示 所有这些都是internet explorer的问题。在FireFox中运行良好 在firefox中,掩码可以正常工作,因为它只允许数字和固定格式,但在ie中,当你聚焦时,格式或掩码会正确显示,但当你开始键入时,字符会被追加,而不是代替掩码。它还允许使用非数字字符。我曾尝试在IE中发出警报,但也不起作用。我在谷歌上找不到关于这个问题的任何信息 如果你先签入firefox,然后签入

我有一张桌子,一个上面有货币输入掩码的输入框。我还没有遇到任何问题,但现在它似乎不能正常工作,我无法从中得到任何提示

所有这些都是internet explorer的问题。在FireFox中运行良好

在firefox中,掩码可以正常工作,因为它只允许数字和固定格式,但在ie中,当你聚焦时,格式或掩码会正确显示,但当你开始键入时,字符会被追加,而不是代替掩码。它还允许使用非数字字符。我曾尝试在IE中发出警报,但也不起作用。我在谷歌上找不到关于这个问题的任何信息

如果你先签入firefox,然后签入IE,你就会更好地理解它在做什么。它是位于底部的不太先进的单元。或者只是在url中添加#less

我将提供与此相关的任何代码。不过,我没有收到任何错误

代码:


总计
$('less').removeAttr(“只读”).css(“背景色”,“无”).css(“文本对齐”,“右”).maskMoney({symbol:”“});
$('#less').keyup(函数(){
$('net').val(数字($('grandTot').val()-$('less').val()).toFixed(2));
警报($('#less').val());
});
//如果刷新页面,则获取净总计的值//
if($('#less').val()!=“”('#less').val()!=“”){
$('net').val(数字($('grandTot').val()-$('less').val()).toFixed(2));
}

看起来IE中根本没有应用屏蔽。您使用哪个插件进行屏蔽

编辑 我正在用IE 7.0.5730.13进行测试,但面具根本不起作用。关注和输入
不会产生特殊的功能,但会引发错误

Line:  13
Char:  12949
Error: Invalid property value.
Code:  0
你试过用调试这个吗

此外,您还需要通过使用jQuery来提高您的纪律性。重复使用

var $less     = $('#less')
  , $net      = $('#net')
  , $grandTot = $('#totals .grandTot')
;

$less
  .removeAttr( "readonly" )
  .css( "background-color", "none" )
  .css( "text-align", "right" )
  .maskMoney( {symbol: ""} )
;

$net.bind( 'update-total', function()
{
  $net.val( Number( parseFloat( $grandTot.val() ) - parseFloat( $less.val() ) ).toFixed( 2 ) );
} );

$less.keyup(function()
{
  $net.trigger( 'update-total' );
  alert( $less.val() );
});

//Get value of net total if page is refreshed.//
if ( $less.val() != "" || $less.val() != " " )
{
  $net.trigger( 'update-total' );
}
$('#less').keyup(函数(){ $('net').val(数字($('grandTot').val()-$('less').val()).toFixed(2)); 警报($('#less').val()); });


你很可能会用这个覆盖你的屏蔽函数。把所有东西都拿出来,然后看看你的面具是否有效。如果是这样,则它是覆盖输入框屏蔽更改的附加功能之一。

或仅更新到最新版本:)


我使用的插件是:另外,我知道我的jquery不是100%完美,但它一点也不坏。我以前也读过那篇文章。现在,我只想把重点放在这一点上。掩码“似乎”起作用,因为当你专注于输入时,你可以看到“0.00”,但当你开始输入时,它就从那里断开了(我正在检查IE7。ie6或ie8可能还有其他问题)。我认为这与keyupYes有关,当我通过internet选项打开错误报告时,我注意到了这个错误。根本不知道那是什么。其他口罩是否适合你?在表格主体中,有相同的遮罩,显示没有缺陷。这就是让我感到困惑的地方。伟大的分析。我已经这样做了,我的面具工作正常。现在只是在慢慢地把它们拼在一起。
var $less     = $('#less')
  , $net      = $('#net')
  , $grandTot = $('#totals .grandTot')
;

$less
  .removeAttr( "readonly" )
  .css( "background-color", "none" )
  .css( "text-align", "right" )
  .maskMoney( {symbol: ""} )
;

$net.bind( 'update-total', function()
{
  $net.val( Number( parseFloat( $grandTot.val() ) - parseFloat( $less.val() ) ).toFixed( 2 ) );
} );

$less.keyup(function()
{
  $net.trigger( 'update-total' );
  alert( $less.val() );
});

//Get value of net total if page is refreshed.//
if ( $less.val() != "" || $less.val() != " " )
{
  $net.trigger( 'update-total' );
}