[英]In jQuery, how can I replace the body of my document and still get JavaScript to fire?
[英]How can I get and replace this in javascript ( jquery?
我需要操作如下所示的鏈接href:
/代理商/視圖/型號:會員/ ag_start_dateMonth:08 / ag_start_dateYear:2012 / ag_end_dateMonth:08 / ag_end_dateYear:2012
我需要抓住這一部分: ag_start_dateMonth
並將值08
替換為用戶通過表單選擇的值。
這意味着,我需要找到模式ag_start_dateMonth
在字符串中的ag_start_dateMonth
並在:
和next /
之前查找值,並將其替換為用戶通過表單選擇選項提供的新值。
我怎樣才能做到這一點? 請指教,我不確定regex語法:-/
使用replace :
var s = '/agents/view/model:Member/ag_start_dateMonth:08/ag_start_dateYear:2012/ag_end_dateMonth:08/ag_end_dateYear:2012';
var selected = 10;
s = s.replace(/(ag_start_dateMonth:)([0-9]+)/, '$1' + selected);
這個方便的正則表達式維護兩個匹配的組:一個可能稱為靜態的組,另一個會包含要替換的日期。
這應該可以幫助您:
var s = '/agents/view/model:Member/ag_start_dateMonth:08/ag_start_dateYear:2012/' +
'ag_end_dateMonth:08/ag_end_dateYear:2012';
var newText = 'foo';
alert(s.replace(/(ag_start_dateMonth:)08(\/)/, '$1' + newText + '$2'));
如果此輸入來自頁面上的表單,則始終可以“重建” href,而不是搜索和替換。 假設您有一個表單是從頁面上獲取這些值的,而使用jQuery則很簡單,例如
jQuery('#id-of-form button').click( function () {
var start_month = jQuery('#id-of-form select.start-month').val();
var start_year = jQuery('#id-of-form select.start-year').val();
var end_month = jQuery('#id-of-form select.end-month').val();
var end_year = jQuery('#id-of-form select.end-year').val();
jQuery(a#your-link-id).attr('href','/agents/view/model:Member/ag_start_dateMonth:' +
start_month + '/ag_startdateYear:' + start_year + "/ag_end_dateMonth:" +
end_month + '/ag_end_dateYear:' + end_year);
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.