2012-03-10 2 views
1

Внутри selectmenu от https://github.com/fnagel/jquery-ui Я установил заголовок для каждого параметра, который отображается в виде значка. Работает отлично, за исключением значков, имя файла которых содержит пробел. Значок не отображается, если имя файла, как African Union.pngjQuery escape white spaces

Jquery:

 $('select.flags').selectmenu({ 
      icons: [ 
       {find: '.icon'} 
      ], 
      bgImage: function() { 
       return 'url(' + $(this).attr("title") + ')'; 
      } 
     }); 

HTML:

<option value="African Union.png" class="icon" title="/img/icons/flags/African Union.png" >African Union</option> 

Если я не в состоянии заставить его работать внутри JQuery - Как избежать пробелы с использованием php? Есть ли опция str_replace?

+0

Где вы использовали PHP? –

ответ

1

URLs in CSS может быть либо без кавычек или цитируются в одинарных или двойных кавычках. Если некотируемый, как в вашем случае, вам нужно, чтобы избежать определенных символов:

Некоторых символов, входящие в котировочном URI, такие как круглые скобки, пробельные символы, одиночные кавычки (') и двойные кавычки ("), должна сбежать с обратным слэшем, чтобы итоговое значение URI было маркером URI: '\(', '\)'.

Итак:

'url(' + $(this).attr("title").replace(/(?=[()\s'"])/g, '\\') + ')' 

Или вы поместите URL в кавычки, предпочтительно двойные кавычки plain single quotes are allowed in URLs:

'url("' + $(this).attr("title") + '")' 
0

Попробуйте один

$("#text_box_id").change(function() { 
var name = $(this).val(); 
var dname_without_space = $("#text_box_id").val().replace(/ /g, ""); 
var name_without_special_char =  dname_without_space.replace(/[^a-zA-Z 0-9]+/g, ""); 
$(this).attr("value", name_without_special_char); 
}); 

Это удалит белое пространство, а также специальные символы. просмотреть этот

http://patelmilap.wordpress.com/2011/08/17/using-jquery-remove-space-special-characters-while-typing/

1

Использовать обычные urlencode. Вы не можете иметь пробелы в URL-адресе в первую очередь.

$filename = "African Union.png"; 
$url = urlencode($filename); 
$html_safe_url = htmlspecialchars($url); 

echo "<option value='$html_safe_url' class='icon' title='/img/icons/flags/$html_safe_url'>African Union</option>