我已经定义了自己的函数,如下所示:
jQuery.fn.createSelector = function(){
var element = $(this[0]);
// hide original selector
$(element).hide();
// create new selector
$(element).after('<table class="selectorReplacer"><tr><td class="td01"></td><td class="td02"><div></div></td><td class="td03"></td></tr></table>');
};
Run Code Online (Sandbox Code Playgroud)
然后我应用它,像这样:
$(".createSelector").createSelector();
Run Code Online (Sandbox Code Playgroud)
在我的HTML中,我有许多<div class="createSelector">div,但该函数仅应用于它们中的一个(代码中的第一个).
我该如何重写我的函数以将其应用于所有元素?
编辑:还有一个问题.
我需要添加更多元素,让我们这样说:
.after('<div id="div1">')
.after('<div id="div2">');
Run Code Online (Sandbox Code Playgroud)
问题是结果是相反的,所以插入后,HTML看起来像这样:
<div class="createSelector"></div>
<div id="div2">
<div id="div1">
Run Code Online (Sandbox Code Playgroud)
如何按照我在代码中编写的顺序插入它们?
当我有这个代码时:
$("img").each(function(i) {
$(this).delay(i*100).fadeIn('slow');
});
Run Code Online (Sandbox Code Playgroud)
...如何使这些图像以随机顺序出现?这意味着不是从左上角到右下角,而是随机像图像45,图像100,图像3等......?
我正在使用jquery向ajax发送一个html表单,当我将表单发送到我的php文件并print_r($_POST)用来查看发送的内容时,结果如下:
Array
(
[data] => user_first_name=&user_last_name=&user_birthday_day=&user_birthday_month=&user_birthday_year=&user_addr_street=&user_ad
dr_street_no=&user_addr_city=&user_addr_zip=&user_addr_country=1&user_contact_phone=&user_contact_email=&user_knows_us_from=
)
Run Code Online (Sandbox Code Playgroud)
基本上,我得到了这样做,但我不太确定将这个字符串拆分成数组的最佳方法是什么.我知道如何使用explode('&', $data),但它只会将我的字符串分解为带有值的数组,但是数字键.我需要$key => $value看起来[user_first_name] => 'Peter'而不是[1] => 'user_first_name=Peter'
你怎么解决这个问题?
编辑:这是我的ajax代码,但它有效,所以我认为这不是必要的,但仍然..
var formData = $('#form-registracia').serialize();
$.ajax({
url: '/ajax/registracia.php',
type: 'POST',
dataType: 'text',
data: {'data':formData},
success: function(data){
// something will be here
}
});
Run Code Online (Sandbox Code Playgroud) 假设我有这样的事情:
var location = '/users/45/messages/current/20/';
我需要最终得到这个:
'/45/messages/current/20/'
所以,我需要删除第一部分 /whatever/
我可以使用jquery和/或javascript.我怎么能以最好的方式做到这一点?
我有一个字段的表叫type,其中3个各排是可能的:1,2和3.
现在,我根本不在意3.我需要计算有多少行type = 1和有多少行type = 2.我这样做有两个查询,像这样:
Query1:SELECT COUNT(id) as count FROM users WHERE type='1'
Query2:SELECT COUNT(id) as count FROM users WHERE type='2'
我只用一个查询就可以做到这一点吗?如果是的话,我应该,不是吗?查询怎么样?
在google maps api v3中,以下行有效:
var myLatlng = new google.maps.LatLng(50.082243,24.302628);
Run Code Online (Sandbox Code Playgroud)
但是,以下不是:
var gpsPos = '50.082243,24.302628';
var myLatlng = new google.maps.LatLng(gpsPos);
Run Code Online (Sandbox Code Playgroud)
这有多奇怪,或者更好,如何解决这个问题?
这是完整的代码:
$("document").ready(function(){
var script = document.createElement("script");
script.type = "text/javascript";
script.src = "http://maps.google.com/maps/api/js?sensor=false®ion=SK&callback=initialize";
document.body.appendChild(script);
});
function initialize(){
var gpsPos = '50.082243,24.302628';
var myLatlng = new google.maps.LatLng(gpsPos);
var myOptions = {
zoom: 7,
center: myLatlng,
mapTypeId: google.maps.MapTypeId.ROADMAP,
panControl: false,
zoomControl: true,
mapTypeControl: true,
scaleControl: false,
streetViewControl: false,
scrollwheel: false
}
var map = new google.maps.Map(document.getElementById("otvorena-aukcia-mapa"), myOptions);
var marker = new google.maps.Marker({
position: …Run Code Online (Sandbox Code Playgroud) 什么是最合理,跨浏览器兼容的方式来创建一个圆形的元素?这个元素将是不可见的,但是可点击=它将在已经有图像的背景上,所以我只需要创建一个不可见的虚构元素,使背景圆可以点击.
该元素不需要是<a>标记,因为click事件将仅使用jquery绑定,不需要向href浏览器发送任何内容.因此一个div会做.问题是:如何完成剩下的工作?
编辑
实际上,我需要在每次点击时更改网址,但不要刷新网页,而是让网址可供用户复制.因此,如果我可以div使用jquery 绑定标记以将URL从base#home更改为base #contact,则一切正常.
EDIT2
我不需要jquery代码,我只需要html/css部分来创建元素.
在我的 MySQL 表中,我有一些行status= NULL,一些行status= 0
在查询中选择它们时:
SELECT *
FROM `table`
WHERE `status` != 0
Run Code Online (Sandbox Code Playgroud)
这忽略了0和NULL值。
我怎样才能忽略 ONLY0值?
使用javascript中的stripos函数,例如:
function stripos (f_haystack, f_needle, f_offset) {
var haystack = (f_haystack + '').toLowerCase();
var needle = (f_needle + '').toLowerCase();
var index = 0;
if ((index = haystack.indexOf(needle, f_offset)) !== -1) {
return index;
}
return false;
}
Run Code Online (Sandbox Code Playgroud)
我如何使用/重新编码此函数以使其与特殊字符匹配?
仿佛:
var haystack = 'Le créme';
var needle = 'reme';
// ^ these two should match (anything other than false)
Run Code Online (Sandbox Code Playgroud) 假设我有3个表:
表1称为"状态":
id | state
1 italy
2 netherlands
3 russia
Run Code Online (Sandbox Code Playgroud)
表2称为"酒店":
id | hotel name | belongsToCountry
1 Green Hotel 2
2 Luxurious 2
3 Get Warm! 3
Run Code Online (Sandbox Code Playgroud)
表3称为"免费房间":
id | roomID | belongsToHotel
1 815 2
2 912 2
3 145 1
4 512 1
5 1200 3
Run Code Online (Sandbox Code Playgroud)
现在,我需要回应的是:
荷兰有4间免费客房.
俄罗斯有1个免费房间.
在话:我需要做的清单所有国家具有至少1的自由空间,我需要返回的准确值多少免费客房也有.
如果有人能帮助我,我会非常感激!
我有一个自定义创建(没有使用插件,除了jquery)选择器,如下所示:

该列表项被称为元素.selectorList.
我这样打开它:
$("#selectorReplacement").click(function(){
$("#.selectorList").stop(true,true).slideToggle(0);
});
Run Code Online (Sandbox Code Playgroud)
这一切都很好,功能很好,问题就在于我想关闭它.我可以通过单击#selectorReplacement来关闭它,因为必须这样做,但我也希望当我点击网站上的其他任何地方时这个元素关闭,就像原始<select>工作一样.
我在哪里绑这个?如果它这样做:
$("body").click(function(){
$(".selectorList").slideUp(0);
});
Run Code Online (Sandbox Code Playgroud)
然后我甚至无法打开它,因为正文遍布所有网站,所以即使我点击元素开启器,它也会因为这个绑定而自动关闭.
我需要类似的东西,$("除了#selectorReplacement之外的所有东西")
我该怎么做呢?
输入以下内容:
#element{ color: #333; }
#element2,
.element3,
.whatever{ background: red; }
.test,
.test2, .test3,
#test111,
.element5555, #fooooooter{ display: none; }
#element8 tr .bacon{ font-size: 10000em; }
Run Code Online (Sandbox Code Playgroud)
如何使用正则表达式来匹配这些:
#element
#element2
#element8
#test111
Run Code Online (Sandbox Code Playgroud)
并且不匹配这些:
#333
Run Code Online (Sandbox Code Playgroud)
到目前为止我尝试了更多的变化,但我想不出任何有用的东西。
这是我最新尝试的:
(#).*[{]
Run Code Online (Sandbox Code Playgroud)
但它似乎跳过了一些选择器。