簡體   English   中英

Javascript,對話框,數據庫

[英]Javascript,Dialog Box,Database

下面的代碼是來自以下鏈接的示例: http : //bootboxjs.com/examples.html

示例名稱:自定義HTML表單

bootbox.dialog({
                title: "This is a form in a modal.",
                message: '<div class="row">  ' +
                    '<div class="col-md-12"> ' +
                    '<form class="form-horizontal"> ' +
                    '<div class="form-group"> ' +
                    '<label class="col-md-4 control-label" for="name">Name</label> ' +
                    '<div class="col-md-4"> ' +
                    '<input id="name" name="name" type="text" placeholder="Your name" class="form-control input-md"> ' +
                    '<span class="help-block">Here goes your name</span> </div> ' +
                    '</div> ' +
                    '<div class="form-group"> ' +
                    '<label class="col-md-4 control-label" for="awesomeness">How awesome is this?</label> ' +
                    '<div class="col-md-4"> <div class="radio"> <label for="awesomeness-0"> ' +
                    '<input type="radio" name="awesomeness" id="awesomeness-0" value="Really awesome" checked="checked"> ' +
                    'Really awesome </label> ' +
                    '</div><div class="radio"> <label for="awesomeness-1"> ' +
                    '<input type="radio" name="awesomeness" id="awesomeness-1" value="Super awesome"> Super awesome </label> ' +
                    '</div> ' +
                    '</div> </div>' +
                    '</form> </div>  </div>',
                buttons: {
                    success: {
                        label: "Save",
                        className: "btn-success",
                        callback: function () {
                            var name = $('#name').val();
                            var answer = $("input[name='awesomeness']:checked").val()
                            Example.show("Hello " + name + ". You've chosen <b>" + answer + "</b>");
                        }
                    }
                }
            }
        );

我想知道如何在用戶單擊“保存”時將在文本框中輸入的數據發送到特定列和特定行(基於條件)到數據庫,以覆蓋特定行的列數據按鈕。

請詳細說明我是否可以使用javascript進行操作;如果不能,請使用哪種語言。 此外,還請通過使用上面給出的示例為我提供代碼來告訴我該如何做。

我剛剛開始進行Web開發,但是我沒有太多經驗。 如果您能給我一個很好的答案並解決我的問題,我將非常感謝您。 提前非常感謝您。

好吧,不知道您是否真的了解自己在做什么,那么您應該看看代碼中的這一部分:

//This is the part where you are supposed to handle your data
//This code is called only when you click on your success button
callback: function () {
    var name = $('#name').val();
    var answer = $("input[name='awesomeness']:checked").val()
    Example.show("Hello " + name + ". You've chosen <b>" + answer + "</b>");
}

因此,如果這段代碼不錯,那么您只需要在那兒完成數據庫工作,一個好的方法就是ajax調用-function:

$.ajax({
    type : 'POST',
    url : 'yourPhpCodeToWriteInDatabase.php',
    data : {'data1':something,'data2':somethingElse},
    error : function(response){
        //do something if your php code fails
    },
    success : function(response){
        //do something if your php code succeeds
    }
});

也許將.ajax代碼包含在一個僅在成功時才調用的回調函數中也將是一件好事……像這樣:

function writeToDatabase(data1,data2,callback){
    //your ajax code and error/success like this : 
    //...
    error : function(response){
        callback(response);
    },
    success : function(response){
        callback(response);
    }
    //...
}

然后,在回調部分的代碼(您的引導箱...)中執行以下操作:

//...
callback : function(){
    writeToDatabase($('#name').val(),$("input[name='awesomeness']:checked").val(),function(response){
        //do something with the function response there!
    });
}
//...

這只是做到這一點的一種方法。 我不假裝這是完成這項工作的最佳方法,但這可能是一個解決方案。 您可能應該等待其他人向您展示另一種方法,這可能會更適合您的問題。 但這是一條路。

希望能幫助到你!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM