关于JavaScript页面创建

时间:2015-07-18 13:57:59

标签: javascript

我有一个前端Java脚本页面,它从用户获取数据并将其存储到变量中。我的Web应用程序就像一个Facebook类型,但是使用模糊逻辑的决策支持系统系统。

我想知道的是,如果用户请求使用该JS页面的页面,我的JavaScript页面是由所有用户共享还是创建单个全新页面?

我想知道,因为在我的JS页面中,我必须全局存储一些数据,并且在同一个JS页面中由不同的JS函数访问它。如果所有用户共享一个JS页面,并发将影响该全局变量中的值。

代码:

var Data_obj = new Object();   // Global variable

$(document).ready(function () {
    docReady();
});

function docReady() {
    //prevent # links from moving to top
    $('a[href="#"][data-top!=true]').click(function (e) {
        e.preventDefault();
    });

    //chosen - improves select option
    $('[data-rel="chosen"],[rel="chosen"]').chosen();

    //tabs
    $('#myTab a:first').tab('show');
    $('#myTab a').click(function (e) {
        e.preventDefault();
        $(this).tab('show');
    });

$('#applicant_table tbody').on("click",".cv_info",function (e) {
        e.preventDefault();
        Cv_path=$(this ).attr("cv_path");
        $("#cv_data").html('<object data="'+Cv_path +'" type="application/pdf" width="450" height="460"></object>');
 $('#myModal_cv').modal('show');
    });

 $('#applicant_table tbody').on("click",".msg",function (e) {
        e.preventDefault();
        Data_obj.E_mail=$(this ).attr("email");//Data fetch and stored in object
        Data_obj.name=$(this ).attr("name");
        $('#myModal_email').modal('show');

     });


 $('#applicant_table tbody').on("click",".setting",function (e) {
        e.preventDefault();
        Data_obj.can_id=$(this ).attr("can_id");
        alert(can_id);
        //$('#myModal_setting').modal('show');
    });
}
$( "#filter_option" ).change(function() {
    $("#applicant_table tbody").empty();
    $( "#filter_option option:selected" ).each(function() 
   {
    var van_id=$("#Job_title option:selected").val();   
        var Duration=$(this).val();
        if(van_id!="")
        {
        //  alert("Anil");
        var Obj=new Object();
            Obj.duration=Duration;
            Obj.van_id=van_id;


              $.ajax({
                  type: "POST",
                url: '/Arsenal/requritment/Update_Application_table',
              contentType: 'application/json',
              data: JSON.stringify(Obj),
             success: function(Data){
                for(var i=0;i<Data.length;i++)
                    {
                    // alert("hello");

                    data=Data[i];
                 if(data.can_id!=null)
                     {var a='<tr><td><b>'+data.apply_date+'</b></td><td><b><i>'+data.name+'</i></b></td><td><b>'+data.phone+'</b></td><td><span class="label-success label label-default">New</span></td><td> <i class="glyphicon glyphicon-list-alt cv_info" cv_path="/Arsenal/requritment/getCv?can_id='+data.can_id+'"></i>  <i class="glyphicon glyphicon-envelope msg" email="'+data.e_mail+'"  name="'+data.name+'" ></i> <i class="glyphicon glyphicon-cog setting" email="'+data.e_mail+'"  can_id="'+data.can_id +'"></i></td></tr>';
$("#applicant_table tbody").append(a);}}}});}});});
function Send_Message()
{
    alert(Data_obj.name);    // data retrieval
       Msg_title=("#title_name").val();
       Msg_body=("#content_info").val();
       $('#myModal_email').modal('hide');
}

1 个答案:

答案 0 :(得分:0)

每个用户(每个http请求)都会独立加载和执行您的JavaScript ...即您的脚本内容将是新鲜的&#39;为每个用户。

当您需要与服务器或其他用户进行通信时,您需要将数据发送到后端,并将其分发回服务器中的所有用户。大多数人都使用ajax,我看到你已经在代码中有一些ajax调用...所以也许你已经这样做了。这很难说。

如果您不希望用户之间进行通信,您只需将所有用户数据存储在本地存储中,或将其保存在内存中。

更准确的答案,需要一个更精确的问题:)