2015-04-29 134 views
0

我有一些數據表通過帕拉姆,我想帕拉姆ID 194出來的URL的我怎樣才能在URL中的JavaScript

admin/customer-management/updater/id/194 

我的Ajax:

"sAjaxSource": "/<?= Zend_Registry::get('Zend_Locale')->getLanguage(); ?>/admin/CustomerManagement/getlistcontactsajax/idCustomer/" + $(this).attr('value'); 

我這樣做+ $(this).attr('value');但它不起作用。

+0

你想要得到的來自URL的'id'? – Noman

+0

你需要重寫你的問題。什麼是$(這)?即什麼事件你訪問attr(「價值」),這可能是真正的jQuery中的.val()和它與URL有什麼關係?你的意思是'location.href.split(「/」)。pop()' – mplungjan

+0

''admin/customer-management/updater/id/194「.split(」/「)。pop()' – lshettyl

回答

1

如果你有url變量,你可以做你可以使用正則表達式url.match(/\d+$/)去取

0

這是我想出了,由於不清楚的問題。

location.href會給你當前頁面的URL。在你的情況(再次,我的假設),它的admin/customer-management/updater/id/194

因此,請執行以下操作。

var ID = location.href.split("/").pop(); 

上面創建一個陣列,如下圖所示,然後在陣列中分配的最後一個項目的變量ID

["admin", "customer-management", "updater", "id", "194"] 

然後你可以這樣做:

"sAjaxSource": "/<?=Zend_Registry::get('Zend_Locale')->getLanguage();?>/admin/CustomerManagement/getlistcontactsajax/idCustomer/" + ID 
+0

看起來非常接近我的建議,但沒有回答,因爲沒有足夠的信息來查看他的意思。 – mplungjan

1

你可以做通過:

parseInt(location.href.split("/").pop()) 

parseInt(location.href.replace(/[^0-9]/ig, "")) 
+0

爲什麼parseint?這是一個字符串被用作字符串 – mplungjan

2

顯然,您使用PHP(使用Zend)編寫您的js代碼。
可以恢復的ID在你的控制器:

$id = $this->getRequest()->getParam('id'); 

所以,你可以寫它的js代碼(可通過變量視圖):

"sAjaxSource": "/<?=Zend_Registry::get('Zend_Locale')->getLanguage();?>/admin/CustomerManagement/getlistcontactsajax/idCustomer/<?= $id?>", 
+0

是的,但我在同一控制器中的其他功能的參數我怎麼能從這個功能updatercustom(),請多謝 – user3791255

+0

我不確定理解。如果updatercustom()生成id,在你的action中,你可以執行'$ this-> view-> id = $ this-> updatercustom();'在你的視圖中,你可以使用'$ this-> id'參數 – doydoy44

+0

在沒有控制器代碼的情況下回答很困難。 – doydoy44