这个答案会从jQuery Mobile的角度来写,不过大部分也可以用在其他群里。
免责声明
这是我个人博客中的一篇文章。
在场
首先也是最重要的,不要发布您的问题并消失。坚持至少半小时甚至一小时,等待评论(对您的问题)甚至更好的答案。通常,SO 成员会有更多问题,您应该尽快回答。不要把它看作是一件苦差事,你有一个问题,你应该努力寻找一个正确的答案。
如果没有人回答您的问题,请在白天返回几次。
代码示例
其次,您需要提供一个代码示例。越多越好,但不要过度。如果您要放置大型代码示例,请尝试注释所有内容。例如:“这是我的索引页面,我的问题发生在这里......”。并且因为这是一个致力于 jQuery Mobile(次要于 jQuery)的小组,所以也要注意放置您的 js 代码,让它比 HTML 代码具有更高的优先级。
例如,这是一个格式正确的问题:how to load an another html file on a button click in jquery mobile
我们需要的一切都在这里:
这个 js 代码示例涵盖了整个页面,我们可以使用它来创建一个工作示例。最好只为您指明正确的方向。
<script type="text/javascript">
$(document).ready(function() {
var userName;
var userPassword;
$("#submitBtn").click(function() {
//alert("HI");
userName = $("#UserName").val();
userPassword = $("#Password").val();
if ((!UserName)|| (!userPassword)) {
alert("Enter the Details");
}
else {
if ((userName !="alpha") ||(userPassword !="beta")) {
alert('Enter correct username and password');
}
else {
//here i want to load my selectOption.html file ?
}
}
});
});
</script>
就像在顶级示例中一样,这足以让我们看到问题并为您创建一个工作示例。
<body>
<div data-role="page" id="home">
<div data-role="header">
<h1>Enter Credential</h1>
</div>
<div data-role="content">
<label for="UserName">User Name</label>
<input type="text" name="UserName" id="UserName" value="" style="width:220px;" />
<label for="Password">Password</label>
<input type="password" name="Password" id="Password" value="" style="width:220px;" />
<div id="submitBtn" data-role="button">Submit</div>
</div>
</div>
</body>
实时代码示例
第三,如果您想更进一步,可以从您的代码中创建一个 jsFiddle 示例。jsFiddle 是一款出色的在线工具,您会发现很多 SO 成员都使用它来回答或提问。
官方页面:http: //jsfiddle.net/
通常问题可以在一个较小的 HTML 和 JS 示例中重新创建,因此使用它来创建一个有效的实时示例。您会惊讶于这将导致成功回答多少次。例如,这是我用来帮助其他 SO 成员的模板,它包含我需要给出快速正确答案和工作示例的一切:http: //jsfiddle.net/Gajotres/yWTG2/
另一个主要注意事项是,您的代码(HTML 或 js)必须格式正确。如果您有一个大型代码示例,您可以使用此工具自动使您的代码看起来很漂亮:http: //jsbeautifier.org/
你应该经常和明智地使用它。不要忘记您可以将它用于您自己的代码。
附加信息
不要忘记告诉我们您在项目中使用了哪些框架版本。这个非常重要。通常只需要一个 jQuery 和 jQuery Mobile 版本。,如果您使用其他框架,您也应该放置它们的版本。
如果您有时间并会查看我关于 jQuery Mobile 的其他答案/文章。根据我的经验,您 50% 的 jQuery Mobile 问题都可以在这里解决:
最后的想法
最后重要的事情。谦虚一点,没有人喜欢聪明人。不管你是多么聪明或优秀的开发人员。您在这里寻求帮助,所以请帮助我们帮助您。
编辑 :
要回答您的问题,您的问题在文档就绪行中。它不能与 jQuery Mobile 一起使用,因为它通常会在 jQuery Mobile 页面初始化之前触发。如果页面未初始化,则您的按钮不能存在于 DOM 中。
要解决它,您应该使用正确的 jQuery Mobile 页面事件,如下所示:
$(document).on('pagebeforeshow', '#index', function(){
});
其中 $index 是您页面的 id。