在今天早些时候(2012年7月13日)升级到jQuery Mobile 1.1.1之后,我注意到我的所有自定义选择菜单都不再在页面加载时显示占位符文本.我在1.1.1中需要做些什么来在自定义选择菜单中显示占位符文本吗?救命!?!?
这是我的代码示例:
<div data-role="fieldcontain" class="ui-hide-label no-field-separator">
<label for="ceiling" class="select" data-theme="a">Ceiling</label>
<select name="ceiling" id="ceiling" data-theme="a" data-native-menu="false" class="required">
<option data-placeholder="true">Ceiling (Yes/No)</option>
<option value="Yes">Ceiling: Yes</option>
<option value="No">Ceiling: No</option>
</select>
</div>
Run Code Online (Sandbox Code Playgroud)
示例图像(黑条是我的自定义选择菜单):

我试图通过自定义函数验证jQuery验证引擎的子域的可用性.验证似乎正确发生,但如果.ajax请求返回200,则不显示alertText.我已添加Access-Control-Allow-Origin标头,可以在我的日志中看到请求成功完成.
我究竟做错了什么?
Javascript功能:
function validateDomain(field, rules, i, options) {
var url = "https://" + field.val() + ".example.com/";
$.ajax(url,
{
statusCode: {
200: function() {
//alert('name exists already');
return options.allrules.validate2fields.alertText;
}
}
});
}
Run Code Online (Sandbox Code Playgroud)
表格字段:
<label class="required" for="signup[subdomain]">Subdomain<span>*</span></label>
<span>https://</span>
<input id="signup[subdomain]" name="signup[subdomain]" class="field field validate[required,funcCall[validateDomain]]" type="text">
<span>.example.com</span>
Run Code Online (Sandbox Code Playgroud) 我正在使用Twitter Bootstrap.
根据Bootstrap文档,我已经使用附加按钮实现了搜索输入.我HTML的表格在这里显示
<form class="form-search text-center" method="get" action="#">
<div class="input-append">
<input type="search" class="span7 search-query" name="q" autocomplete="off" placeholder="SEARCH" tabindex="1">
<button type="submit" class="btn"><i class="icon-search icon-large"></i> </button>
</div>
</form>
Run Code Online (Sandbox Code Playgroud)
出于某种原因,在移动设备(即iPhone 5)上查看表单时,搜索框会出现,如下面的屏幕截图所示:

当我在桌面浏览器中查看搜索表单并将其调整为"移动大小"时,搜索框会正确显示,如第二个屏幕截图所示(忽略较轻的边框和大小差异):

--------- 问题 ---------
如何防止搜索输入显示不正确,如第一个屏幕截图中所示?什么可能导致这个?我查看了两个搜索输入的源和计算样式,一切看起来都是一样的.救命?
如果我改变了input type="search"对type="text"这个问题不存在,所以它一定是在某处CSS,但我不能弄明白.什么CSS实际应用这种效果?
--------- 更新 ---------
如果我切换<div class="input-append">到<div class="input-prepend">搜索输入显示正确.此外,当场具有焦点时,右侧的圆角变为"方形"并正确显示.
我的JSON数据用括号括起来,例如:[{"cust_id":"109"}].这是为什么?我试过mysql_fetch_row和mysql_fetch_object.我需要子串来删除括号吗?
另外,如何在javaScript中显示JSON对象?在Firebug中,如果我对JSON数据进行硬编码,我会看到一个值为JSON,但alert()不会显示它.
谢谢.
$rows = array();
while($r = mysql_fetch_assoc($rs)) {
$rows[] = $r;
}
echo json_encode($rows);
Run Code Online (Sandbox Code Playgroud) 我有一个表格,可以存储很多Twitter推文的信息,包括推文文本和发推文推文的用户的屏幕名称.推文包含主题标签(以#开头),我想计算特定用户推文的主题标签数量:
tweet_id | tweet_text | screen_name |
--------------------------------------------------------------------------------------------
1 | #hashtag1 #otherhashtag2 #hashtag3 some more text | tweeter_user_1 |
2 | some text #hashtag1 #hashtag4 more text | tweeter_user_2 |
3 | #hashtag5 #hashtag1 @not a hashtag some#nothashtag | tweeter_user_1 |
4 | #hashtag1 with more text | tweeter_user_3 |
5 | #otherhashtag2 #hashtag3,#hashtag4 more text | tweeter_user_1 |
Run Code Online (Sandbox Code Playgroud)
如果我要计算tweeter_user_1的主题标签,我期望的结果是8,如果我想要tweeter_user_3的主题标签它应该返回1.如果我的表名是推文我怎么能这样做.
我试过这个:SELECT COUNT( * ) FROM tweets WHERE( LENGTH( REPLACE( tweet_text, '#%', '@') = 0 ) ) AND screen_name = …
我一直在使用jquery验证插件进行浏览器端验证的简单表单,由于某些原因我不知道,似乎'phoneUS'规则似乎打破了其余的验证代码.
只要该字段("tel")在表单上为空白,验证就会按预期工作.但是,如果在电话字段中输入任何内容(包括字母),则会跳过验证并提交表单,即使其他必填字段留空也是如此.但是,如果从代码中取出'phoneUS'规则,则应用于'tel'输入的其他验证规则仍然适用.不用说,我完全糊涂了.
该脚本是:
<script type="text/javascript">
$(document).ready(function(){
$('#survey1').validate({
rules: {
firstname: {
required: true,
},
lastname: {
required: true
},
address1: {
required: true
},
city: {
required: true
},
state: {
required: true
},
zip: {
required: true,
digits: true
},
tel: {
required: true,
phoneUS: true
},
email: {
email: true
}
}
});
});
</script>
Run Code Online (Sandbox Code Playgroud)
标签和输入字段只是名称与脚本匹配的简单文本框.表单操作设置为使用php文件将结果通过电子邮件发送到静态电子邮件地址.如果任何其他信息有用,我会提供.
我对jQuery比较陌生,所以请随意提供指针(多余的字符等).
谢谢!
我今天刚刚发布了一个iPhone应用程序.我也在我的网站上实现了Apple的智能横幅.
如果该应用程序仅适用于iPhone应用程序(虽然它将在iPad上运行2倍,但不是通用应用程序),在iPad上查看网页时是否应显示智能横幅?
根据文档(上面的链接),智能横幅将确定它是否应该显示在设备上.

问题:只有在iPad上查看网页时,是否应该为iPhone应用显示横幅?
我有Magento 1.7.0.2
我的问题是从商店视图切换语言.
我启用了mod_rewrite,并启用了商店代码到网址.但语言切换无法正常工作.示例:http://mysite.com/en/- 默认页面
当我想用法语更改语言时,语言切换中的url会显示: http://mysite.com/en/?___store=fr
它不起作用我发现切换器位于:
app/design/frontend/default/mytheme/template/page/switch/languages.phtml
但我不知道如何更改代码,使其正常工作.
当我想改变语言时,需要有这个网址:http://mysite.com/fr
没有?___store=fr.提前致谢.
任何人都可以帮助我使用正确的做法包括.而不是:
include('header.php');
这是一个多页面网站,我想将文件添加到其他文件夹,例如Information文件夹.
在这个信息文件夹中,我有一个文件aboutus.php,其中包含了上一个目录中的标题.
我想过使用这个$_SERVER['DOCUMENT_ROOT']方法,但它看起来有点笨重,而且我的网站位于根目录下的子文件夹中.所以我必须手动硬编码子目录.有没有更简单的方法?
我的网站上有一个Twitter小部件,显示了我们公司最近发布的推文.如果推文超过一定长度,则它不适合网站上的容器并被切断.我想以编程方式更改元素的行高css,具体取决于推文中的字符数.
定义元素的这一部分的CSS如下所示:
ul.tweet_list li{overflow-y: hidden;overflow-x: hidden;padding: 0.5em !important;height: 55px;line-height:55px;vertical-align: middle}
Run Code Online (Sandbox Code Playgroud)
在页面上,该元素仅由以下代码生成:
<div class="tweeter_widget"></div>
Run Code Online (Sandbox Code Playgroud)
我需要检测推文是否超过'X'个字符,如果是,请将行高从55px更改为24px.我不是试图垂直居中文本,而是...
示例:http://justpaste.it/twitter-widget 如果文本太长,它会在您看到上方的"白色容器"的位置周围切断.我想更改文本"bar"的行高,以便它将换行到下一行并保留在我的"红色"容器中.
从理论上讲,这将使用PHP完成,但我知道我可能需要使用jQuery.
编辑:这是产生推文的JS:
/* Twitter initiates. Enter your username here. */
jQuery(function($){
$(".tweeter_widget").tweet({
join_text: "auto",
username: "username",
avatar_size: null,
count: 1,
auto_join_text_default: "",
auto_join_text_ed: "",
auto_join_text_ing: "",
auto_join_text_reply: "",
auto_join_text_url: "",
loading_text: "loading tweets..."
});
});
Run Code Online (Sandbox Code Playgroud) 在我的viewDidLoad方法中,我设置以下变量:
// Get requested URL and set to variable currentURL
NSString *currentURL = self.URL.absoluteString;
//NSString *currentURL = mainWebView.request.URL.absoluteString;
NSLog(@"Current url:%@", currentURL);
//Get PDF file name
NSArray *urlArray = [currentURL componentsSeparatedByString:@"/"];
NSString *fullDocumentName = [urlArray lastObject];
NSLog(@"Full doc name:%@", fullDocumentName);
//Get PDF file name without ".pdf"
NSArray *docName = [fullDocumentName componentsSeparatedByString:@"."];
NSString *pdfName = [docName objectAtIndex:0];
Run Code Online (Sandbox Code Playgroud)
我希望能够在另一个方法中使用这些变量(即- (void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex {)
如何在viewDidLoad方法之外重用这些变量?我是新手......帮助会非常感激
好的我想做的有点独特,我找不到任何在线指导我,所以希望我能很好地解释它.
问题:
我if在PHP中有一系列语句.为简化起见,每个if语句如下所示:
if($product_name == 'shoe') {
$shoe_description = '<p>Shoe description</p>';
echo $shoe_description;
}
else if($product_name == 'car') {
$car_description = '<p>Car description</p>';
echo $car_description;
}
else if($product_name == 'bottle') {
$bottle_description = '<p>Bottle description</p>';
echo $bottle_description;
}
Run Code Online (Sandbox Code Playgroud)
只要$product_name定义为我的变量之一,这就可以正常工作.我想做的是,作为最后一个陈述,说" 如果product_name没有我的变量匹配,则显示上面的随机描述 "; 所以我将else在上面的代码末尾添加一个最终语句(例子 - 不工作的代码):
else {
// Show one of the echo strings from above (i.e. $car_description)
//but pick randomly
}
Run Code Online (Sandbox Code Playgroud)
题:
我需要编辑/添加什么代码,以便最后的else语句选择3个description变量中的一个,以便我可以echo在页面上找到它?
这是一个普遍的问题,但我确信我不是唯一一个遇到Internet Explorer(粗略)和jQuery 1.8问题的人.
(免责声明:我知道这是一个非常广泛的问题,但我希望为自己和未来的Stack用户编译一些资源用于故障排除,因为到目前为止我还没有找到任何帮助.)
题:
在jQuery中构建的某些事件/函数在Chrome,FireFox,Safari,甚至在Internet Explorer 7和8中都可以正常运行,但在Internet Explorer 9中不能正常运行的原因是什么?
我很清楚我可以在我的页面上模仿"IE8"来解决这个问题,但这并不能解决问题.
这是我到目前为止所完成/检查的内容:
document.ready在结束body标记之前包含所有代码.script标签都有type=text/javascript.<!doctype html>,<head>等等)是正确的.我还能做些什么来确保/帮助Javascript和jQuery在Internet Explorer 9中运行至少和在IE8中运行一样(不在兼容模式下运行或模拟IE8)?
UPDATE
如果我将我的<script>标签<body>放在页面中包含jQuery和我的自定义JS ,它的MOST在IE9中正确执行.
jquery ×4
php ×4
css ×2
ios ×2
javascript ×2
variables ×2
count ×1
echo ×1
ipad ×1
iphone ×1
json ×1
magento ×1
multilingual ×1
mysql ×1
nsstring ×1
objective-c ×1
placeholder ×1
plugins ×1
random ×1
safari ×1
select ×1
select-menu ×1