一个简短的问题:在注册过程中,我想要求用户从值列表中选择一个值.
这是使用视图控制器添加所有文本字段和值的选择器视图的正确方法吗?由于选择器视图在文本字段区域之间需要这么大的空间,我想知道在这种情况下最佳实践是什么?
到目前为止这是我的代码:
class RegisterViewController: UIViewController, UIPickerViewDelegate, UIPickerViewDataSource{
@IBOutlet weak var gradeTextField: UITextField!
@IBOutlet weak var gradePicker: UIPickerView!
let gradePickerValues = ["5. Klasse", "6. Klasse", "7. Klasse"]
func numberOfComponentsInPickerView(pickerView: UIPickerView!) -> Int{
return 1
}
func pickerView(pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int{
return gradePickerValues.count
}
func pickerView(pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String! {
return gradePickerValues[row]
}
func pickerView(pickerView: UIPickerView!, didSelectRow row: Int, inComponent component: Int){
gradeTextField.text = gradePickerValues[row]
self.view.endEditing(true)
}
override func viewDidLoad() {
super.viewDidLoad() …Run Code Online (Sandbox Code Playgroud) 我正在使用这个验证正则表达式的JS Animated Contact Form:
rx:{".name":{rx:/^[a-zA-Z'][a-zA-Z-' ]+[a-zA-Z']?$/,target:'input'}, other fields...
Run Code Online (Sandbox Code Playgroud)
我刚刚发现,我不能输入像"Müller"这样的名字.正则表达式不接受这个.我该怎么办,还允许变音符号?
我正在调用cakePhp控制器的ajax调用:
$.ajax({
type: "POST",
url: 'locations/add',
data: {
abbreviation: $(jqInputs[0]).val(),
description: $(jqInputs[1]).val()
},
success: function (response) {
if(response.status === "success") {
// do something with response.message or whatever other data on success
console.log('success');
} else if(response.status === "error") {
// do something with response.message or whatever other data on error
console.log('error');
}
}
});
Run Code Online (Sandbox Code Playgroud)
当我尝试这个时,我收到以下错误消息:
控制器操作只能返回Cake\Network\Response或null.
在AppController中我有这个
$this->loadComponent('RequestHandler');
Run Code Online (Sandbox Code Playgroud)
启用.
Controller函数如下所示:
public function add()
{
$this->autoRender = false; // avoid to render view
$location = $this->Locations->newEntity();
if ($this->request->is('post')) {
$location = …Run Code Online (Sandbox Code Playgroud) 我想用a tableView在动态单元列表的顶部有2个静态单元.据我了解,我必须使用动态原型tableView.但我不明白如何添加2个静态单元并设计它们,例如.将文本字段添加到第一个,将标签添加到第二个.
我的故事板里有什么要做的?在Controller内部我需要做什么?如何区分静态和动态细胞?
有人可以给我一个血腥的初学者一些指导从哪里开始?非常感谢!!
编辑:我试过这个测试:
override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return 5
}
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("cardCell", forIndexPath: indexPath) as CardTableViewCell
//static cell
if (indexPath.row < 2) {
cell.dyn.text = "static \(indexPath.row)"
return cell;
}
// Configure the cell...
cell.dyn.text = "buh"
return cell
}
Run Code Online (Sandbox Code Playgroud)
结果如下:

后来,当我使用真实数据时,我将错过前2个数据行...在创建静态单元格后,我可以以某种方式"重置"行计数器吗?
我怎样才能修改2个静态单元?用于添加文本字段和标签?或者我必须以编程方式执行此操作?
我从DB内容中提取为字符串.使用方法,我从该字符串中提取最长的单词.
现在我想将整个字符串打印到文本标签,但是想要在字符串中突出显示不同颜色和文本样式的最长字.
我怎样才能做到这一点?我是否需要将字符串切成碎片 - 设置格式 - 然后将它们全部放在一起再放入标签之前?
或者还有其他(更好的)方式吗?
在注册过程中,用户可能会导致多个错误,例如已经使用的用户名,无效的电子邮件地址等...
Parse在错误对象中返回所有需要的信息,请参阅http://parse.com/docs/dotnet/api/html/T_Parse_ParseException_ErrorCode.htm
我无法找到的是如何使用它们,例如如何访问它们以编写开关以捕获所有可能性:
user.signUpInBackgroundWithBlock {
(succeeded: Bool!, error: NSError!) -> Void in
if error == nil {
// Hooray! Let them use the app now.
self.updateLabel("Erfolgreich registriert")
} else {
println(error.userInfo)
}
}
Run Code Online (Sandbox Code Playgroud)
如何切换可能的错误代码?请指教谢谢!
我需要捕捉这两个事件:
Reason is - that I want to disable another dropdown (which is responsible for the content of my multiselect) when the first option is selected or all previous selected are deselected.
更新:
$('.projectSelector').on('change', function() {
var targetProject_id = $('#project-id :selected').val();
updateParticpantDropdown(targetProject_id);
});
function updateParticpantDropdown(selectedProjectId){
$.ajax({
type: "POST",
url: '/xx/projects/xx/'+ selectedProjectId,
dataType : "json",
success: function (response, status) {
if(status === "success") {
//console.log('success post');
if(response.result == "error") {
alert(response.message);
}else if (response.result == "success"){
var data = …Run Code Online (Sandbox Code Playgroud) 当使用select2 multiselect并选择一个选项时,我会显示以下错误消息:
TypeError: b.dataAdapter is null
Run Code Online (Sandbox Code Playgroud)
有谁知道这是关于什么的?
multiselect工作正常,我只是想知道这个消息.
编辑:
这是我的HTML:
<div class="form-group">
<label class="control-label col-md-12" for="participant-id">Participant
<span class="required"> * </span>
</label>
<div class="col-md-12">
<input type="hidden" name="participant_id" value=""/>
<select name="participant_id[]" multiple="multiple" class="form-control select2me participantSelector" required="required" id="participant-id">
<option value=""></option>
</select>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
这是jquery init:
$(".select2me").select2({placeholder:"Select",width:"auto",allowClear:!0}))}
Run Code Online (Sandbox Code Playgroud)
如果在另一个下拉列表'projectSelector'中选择了一个值,我得到的多选数据:
$('.projectSelector').on('change', function() {
var targetProject_id = $('#project-id :selected').val();
updateParticpantDropdown(targetProject_id);
});
function updateParticpantDropdown(selectedProjectId){
$.ajax({
type: "POST",
url: '/xx/projects/xx/'+ selectedProjectId,
dataType : "json",
success: function (response, status) {
if (response.result == "success"){
var data = response.data;
$(".participantSelector").empty().select2({
placeholder: …Run Code Online (Sandbox Code Playgroud) 当我去viewController时,我在我的viewDidAppearMethod中调用一个函数:
override func viewDidAppear(animated: Bool) {
getLessons()
}
Run Code Online (Sandbox Code Playgroud)
这个方法从parse.com加载我想在pickerView中使用的数据列表.功能本身:
func getLessons(){
var query = PFQuery(className:"Lesson")
query.orderByAscending("name")
query.findObjectsInBackgroundWithBlock {
(objects: [AnyObject]!, error: NSError!) -> Void in
if error == nil {
for object in objects {
var name = object["name"] as String
self.languagePickerKeys.append(object.objectId)
self.languagePickerValues.append(name)
self.selectedLanguage.text = self.languagePickerValues.first // set the first lessons name into the text field
self.selectedLessonObjectId = self.languagePickerKeys.first // set the first objectId for the lesson
self.languagePicker?.reloadAllComponents()
}
} else {
// Log details of the failure …Run Code Online (Sandbox Code Playgroud) 我有这个问题:
var query = PFQuery(className: "CardSet")
query.whereKey("user", equalTo: PFUser.currentUser())
query.findObjectsInBackgroundWithBlock { (objects, error) -> Void in
if (error == nil) {
// found
}else{
println(error.userInfo)
}
}
Run Code Online (Sandbox Code Playgroud)
结果如下:
<CardSet: 0x7c892120, objectId: 2yty7cpnyF, localId: (null)> {
ACL = "<PFACL: 0x7be65450>";
lesson = "<Lesson: 0x7beaabd0, objectId: JV7trFTx5Z>";
name = "I am your CardSet";
public = 1;
user = "<PFUser: 0x7be834a0, objectId: baz8ObNsmM>";
}
Run Code Online (Sandbox Code Playgroud)
类"CardSet"具有指向"课程"类的指针"课程".如何在查询结果中使用Lesson.name?或者我需要第二次查询?那会很糟糕,因为要解析的请求数量很多......?有没有更好的方法只在一个查询中获取所有指向的数据?
我正在使用 CakePHP 3.6,当我使用带有德语变音符号的单词时,例如:
\n\nText::slug('Grundst\xc3\xbccke')\nRun Code Online (Sandbox Code Playgroud)\n\n我会得到:
\n\n\n\n\nGrundstucke(其中 \xc3\xbc = u)
\n
但这是不正确的,我应该得到:
\n\n\n\n\nGrundstuecke(其中 \xc3\xbc = ue)
\n
是否有一个选项可以设置,以便元音变音按照我想要的方式进行转换?
\n从一个动态的tableView"CardSets"我做一个segue到一个静态的tableView"AddCardSet"来输入一些数据.在成功的save()方法之后,我想将用户发送回初始的tableView"CardSets".我怎样才能做到这一点?
我是否必须在save按钮上设置segue ?或者有更短的方式?
在我的 jquery 中我有这个:
$(this).click(function(e){
e.preventDefault();
... other stuff...
Run Code Online (Sandbox Code Playgroud)
我做了一些额外的验证工作,然后提交了一份表格。我需要这个
e.preventDefault();
等待提交,直到我完成了额外的数据验证,并且我还使用引导程序甜蜜警报进行了一些其他检查。
但使用此方法会阻止对带有 required="required" 标记的字段进行标准浏览器验证。这是一个“视觉”的遗憾。
有没有办法防止 jquery 提交而不破坏浏览器验证?
ios ×7
swift ×7
javascript ×3
jquery ×3
cakephp ×2
select2 ×2
asynchronous ×1
cakephp-3.x ×1
diacritics ×1
forms ×1
json ×1
multi-select ×1
regex ×1
segue ×1
slug ×1
uipickerview ×1
uitableview ×1
validation ×1