成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

thinkphp,外部JS如何獲取模板綁定的變量值

fox_soyoung / 3736人閱讀

摘要:為什么呢官網(wǎng)的截圖是這么說(shuō)的如果要在模板中調(diào)用,就采用的方式。我排查很久,終于明白,原來(lái)是因?yàn)橥獠坎荒苤苯荧@取模板綁定的變量值。可以實(shí)現(xiàn)外部獲取模板中綁定的變量值。實(shí)屬原創(chuàng),如有錯(cuò)誤,敬請(qǐng)指教

我是一只前端,最近初學(xué)thinkphp,剛遇到一個(gè)問(wèn)題,覺得值得分享一下。歡迎吐槽 ~

場(chǎng)景是這樣的:
我要用JS調(diào)用Controller里面的某個(gè)方法獲取json數(shù)據(jù),我便使用thinkphp的U方法,發(fā)現(xiàn)一直報(bào)錯(cuò)。

首先,我們先弄清楚thinkphp的U方法。
thinkphp函數(shù)詳解-U方法

代碼是這樣的:

//common.js里ajax獲取遠(yuǎn)程數(shù)據(jù)
remote: "{:U("Equipment/a")}?q=%QUERY "

報(bào)錯(cuò)是這個(gè):

很明顯是{:U()} 這個(gè)方式不能被正確解析。為什么呢?
thinkphp官網(wǎng)的截圖是這么說(shuō)的:
如果要在模板中調(diào)用,就采用 {:U( )}的方式。

我排查很久,終于明白,原來(lái)是因?yàn)橥獠縅S不能直接獲取模板綁定的變量值。上面中U方法詳解中有講到,在模板中(即view)采用{:U( )}的方式,但是,前端的編碼規(guī)范是把JS/CSS獨(dú)立出來(lái),盡量不要放在HTML代碼里(HTML代碼在view里),于是我就放在public里。然后便出現(xiàn)了上述出現(xiàn)的問(wèn)題。模板只是display了那個(gè)HTML,不包括我的外部文件,外部JS沒有被渲染,thinkphp目前也沒有機(jī)制去解決這個(gè)引入外部文件渲染問(wèn)題。

可以用這種方法來(lái)解決。
我在view模板里,用一個(gè)隱藏的input,然后value里面設(shè)置我要的參數(shù)

然后在JS里面獲取改input的value,然在組裝好自己需要跳轉(zhuǎn)的URL

    var aUrl = $("#a").val();
    var aUrlP = aUrl + "?q=%QUERY";
    
    remote: aUrlP;

這樣就好了??梢詫?shí)現(xiàn)外部JS獲取模板中綁定的變量值。
我覺得方法雖然行得通,但是還是會(huì)出現(xiàn)代碼冗余,期待有更好版本的TP出現(xiàn)。
實(shí)屬原創(chuàng),如有錯(cuò)誤,敬請(qǐng)指教??!

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/86378.html

相關(guān)文章

  • Django 博客開發(fā)教程 6 - 真正的 Django 博客首頁(yè)視圖

    摘要:在此之前我們已經(jīng)編寫了的首頁(yè)視圖,并且配置了和模板,讓能夠正確地處理請(qǐng)求并返回合適的響應(yīng)。正確引入了靜態(tài)文件后樣式顯示正常了。在真正的博客首頁(yè)視圖追夢(mèng)人物的博客的評(píng)論區(qū)留言。更多教程,請(qǐng)?jiān)L問(wèn)追夢(mèng)人物的博客。 在此之前我們已經(jīng)編寫了 Blog 的首頁(yè)視圖,并且配置了 URL 和模板,讓 Django 能夠正確地處理 HTTP 請(qǐng)求并返回合適的 HTTP 響應(yīng)。不過(guò)我們僅僅在首頁(yè)返回了一句...

    yzzz 評(píng)論0 收藏0
  • ES6學(xué)習(xí)筆記--塊級(jí)綁定

    摘要:對(duì)比常量聲明與聲明常量聲明與聲明,都是塊級(jí)聲明。最后一點(diǎn)全局塊級(jí)綁定與不同于的另一個(gè)方面是在全局作用域上的表現(xiàn)。塊級(jí)綁定新的最佳實(shí)踐在的發(fā)展階段,被廣泛認(rèn)可的變量聲明方式是默認(rèn)情況下應(yīng)當(dāng)使用而不是??偨Y(jié)與塊級(jí)綁定將詞法作用域引入。 var變量與變量提升 使用var關(guān)鍵字聲明的變量,無(wú)論其實(shí)際聲明位置在何處,都會(huì)被視為聲明于所在函數(shù)的頂部(如果聲明不在任意函數(shù)內(nèi),則被視為在全局作用域的頂...

    wangshijun 評(píng)論0 收藏0
  • Jmeter跨線程組之間如何共有變量

    摘要:跨線程組之間變量不共享,即使在線程組最外層設(shè)置也不支持,解決方案通過(guò)后置處理器后置處理程序,將變量設(shè)置屬性變?yōu)槿值膩?lái)解決通過(guò)后置處理器獲取正則表達(dá)式提取的變量值,處理器獲取提取的變量值有以下兩種寫法寫法一腳本內(nèi)容寫如下代碼打印日志寫 1、跨線程組之間變量不共享,即使在線程組最外層設(shè)置也不支...

    不知名網(wǎng)友 評(píng)論0 收藏0
  • 字符串與JavaScript之間的魔術(shù)—前端模板的原理及簡(jiǎn)單實(shí)現(xiàn)

    摘要:大多數(shù)模板實(shí)現(xiàn)原理基本一致模板字符串首先通過(guò)各種手段剝離出普通字符串和模板語(yǔ)法字符串生成抽象語(yǔ)法樹然后針對(duì)模板語(yǔ)法片段進(jìn)行編譯,期間模板變量均去引擎輸入的變量中查找模板語(yǔ)法片段生成出普通片段,與原始普通字符串進(jìn)行拼接輸出。 前端模板的發(fā)展 模板可以說(shuō)是前端開發(fā)最常接觸的工具之一。將頁(yè)面固定不變的內(nèi)容抽出成模板,服務(wù)端返回的動(dòng)態(tài)數(shù)據(jù)裝填到模板中預(yù)留的坑位,最后組裝成完整的頁(yè)面html字符...

    Steve_Wang_ 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<