2012-04-29 62 views
0

我有2个jQuery代码片段,第一个是切换只读,第二个是提交表单。jQuery if readonly = true只清除表格的一部分

切换只读:

$('#lock').toggle(function() { 
    $('#handle').attr('readonly', true).addClass('disabled'); 
return false; 
} , function() { 
    $('#handle').attr('readonly', false).removeClass('disabled'); 
return false; 
}); 

提交表单:

$('button').click(function() { 
var handle  = $('#handle').val(); 
var msg  = $('#msg').val(); 
var dataString = 'handle='+ handle + '&msg=' + msg; 

if(handle=='' || msg=='') { 
$('.error').fadeOut(200).show(); 
} else { 

$.ajax({ 
    type : 'POST', 
    url  : 'form.php', 
    data : dataString, 
    success : function(){ 
$('#foo').load('page.php'); 
}} 
}); 
} 
return false; 
}); 

我所试图实现的是

如果只读=真不复位 “处理”价值

否则重置两者,所以我需要获得第一个片段的状态(只读切换)并允许第二个(表单)区分它的真或假。

我试过这个成功:但它没有工作。

if($('#handle').attr('readonly', true)){ 
    $('#msg').val(''); 
    }else{ 
    $('#handle, #msg').val(''); 
+1

检查'$输出( '#句柄')。 attr('只读',true)'。意识到问题所在。修理它。 – 2012-04-29 14:34:44

回答

1

试试这个代码,而不是:

if ($('#handle').is('[readonly]')) { 
    $('#msg').val(''); 
} 
else { 
    $('#handle, #msg').val(''); 
} 

而且使用

​$('#handle').prop('readonly', true) 

代替

$('#handle').attr('readonly', true) 
+0

谢谢你们俩:) – 2012-04-29 14:45:43

相关问题