簡體   English   中英

將變量從javascript解析為html樹枝

[英]parsing variable from javascript to html twig

我開始在Symfony2中使用html樹枝,但遇到以下問題:

function goEditConflict(){
    $("#go").on("click", function(){
    id = $("#case_number").val();

    windows.location = {{ path("acf_case_conflict_edit", {"id" : id}) }} ;
    });
}

第38行的ACFCaseBundle:Shared:caseHierachy.js.twig中不存在變量“ id”

我嘗試基於id變量重定向頁面,但出現錯誤,當我嘗試重定向到{{ path("acf_case_conflict_edit", {"id" : id}) }} ,變量不存在。

如何在樹枝代碼中使用js變量?

您的樹枝將在您的javascript運行之前被編寫,因此,它無法解析jquery調用中的ID。 在這種情況下,最好使用javascript將ID附加到虛擬路由上:

acf_case_conflict.yml:

acf_case_conflict_stub:
    pattern:  /
    defaults: { _controller: "Bundle:acf_case_conflict:edit" }

完善了js:

function goEditConflict(){
    $("#go").on("click", function(){
    id = $("#case_number").val();
    windows.location = {{ path("acf_case_conflict_stub")}}+"/"+id+"/edit";
    });
}

每次呈現頁面時,這將寫入新的js文件以具有新的位置。

使用此代碼

function goEditConflict(){
 $("#go").on("click", function(){
    var url = "{{ path("acf_case_conflict_edit", {"id" : js_id}) }}";

    js_id = $("#case_number").val();
    url = url.replace("id", js_id);
    windows.location = url ;
 });
}

我做了以下事情:

function goEditConflict(){
    $("#go").on("click", function(){
    id = $("#case_number").val();
    {% set var %}
          id
    {% endset %}
    windows.location = {{ path("acf_case_conflict_edit", {"id" : var}) }} ;
    });
}

暫無
暫無

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

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