大写对话框弹出窗口

时间:2013-03-13 05:44:48

标签: jquery css

我有一个页面打开一个对话框,代码在

下面
function addcustomer() {
    $.ajax({
        url: "customers.php",
        async:true,
        success: function(data){
            $('#pop').html(data).dialog({
                width: 420,
                height: 630,
                modal:true,
                draggable:false,
                resizable:false,
                title:'Customer',
                buttons: {
                    Cancel: function(){
                        $(this).dialog("close");
                    },
                    Submit: function(){
                        $("#frmcustomer").submit();
                    }
                }
            });
        }
    });
}

当我打开对话框时,我想要所有输入并选择大写。我试过了:

select, input { text-transform: capitalize }

但它只在我点击对话框中的任何地方后才有效。它首次打开时不会将任何控件大写,我也尝试过:

$(document).ready(function(){  
    $("select,input,textarea").uniform();
    $('select, input').capitalize();
});  

知道如何解决?

3 个答案:

答案 0 :(得分:0)

试试这个

<强> CSS

.capitalize {
  text-transform: capitalize;
}

<强> jquery的

success: function(data){
        $('#pop').html(data).dialog({
         .......
         open: function( event, ui ) {
             $(data).find('select, input').addClass('capitalize'); 
             //or ui.find('select, input').addClass('capitalize');
         }
         ........

答案 1 :(得分:0)

尝试添加:

$('select, input').css('text-transform', 'capitalize');

编辑:

请参阅小提琴http://jsfiddle.net/4NVnG/

答案 2 :(得分:-1)

最快/最安全的方法是使用CSS,这最终是jQuery正在做的事情:

select, input {
    text-transform: capitalize;
}

问题是jQuery函数必须在选项和输入的HTML变为可见以供jQuery选择之后触发。这意味着要使用jQuery来运行对话框中的选择和输入,只能在对话框打开后执行此操作。如果您使用纯CSS,则文本出现时无关紧要。